zoukankan      html  css  js  c++  java
  • java各种的求和

    1、求0到指定数各数之间的和

    1.1、迭代求和

    1 // 迭代求和
    2 static int sum1(int num) {
    3     int sum = 0;
    4     for (int i = 0; i <= num; i++) {
    5         sum += i;
    6     }
    7     return sum;
    8 }

    1.2、递归求和

    1 // 递归求和
    2 static int sum2(int num) {
    3     if (num > 0) {
    4         return num + sum2(num - 1);
    5     } else {
    6         return 0;
    7     }
    8 }

    1.3、高斯算法求和

    1 // 高斯算法求和
    2 static int sum3(int num) {
    3     int sum = (1 + num) * num / 2;
    4     return sum;
    5 }

    2、求x和y两个数之间数字的和

    2.1、迭代求和

    1 // 求x和y两个数之间数字的和(迭代法)
    2 static int sum4(int x, int y) {
    3     int sum = 0;
    4     for (int i = x; i <= y; i++) {
    5         sum += i;
    6     }
    7     return sum;
    8 }

    2.2、递归求和

    1 //求x和y两个数之间数字的和(递归法)
    2 static int sum5(int x,int y){
    3     if(x<y){
    4         return x+sum6(x+1,y);
    5     }
    6     return x;
    7 }

    2.3、高斯算法求和

    1 // 求x和y两个数之间数字的和(高斯算法)
    2 static int sum6(int x, int y) {
    3     int sum = (x + y) * (y - x + 1) / 2;
    4     return sum;
    5 }
  • 相关阅读:
    AOJ 2200 Mr. Rito Post Office
    poj 3259 Wormholes
    01背包求解组合最值问题
    01背包求解面值组成问题
    金明的预算方案
    追赶法
    有关动态规划的一些定理。。。。。
    4980
    并查集
    快速幂
  • 原文地址:https://www.cnblogs.com/wonglar/p/6992463.html
Copyright © 2011-2022 走看看