【java】【递归】利用递归求数组和

2021-09-16 14:39:38 浏览数 (1)

代码语言:javascript复制
public class h {
    public static int f(int[] a,int begin){
        if(begin == a.length) return 0;
        int x = f(a,begin 1);
        return x a[begin];
    }

    public static void main(String[] args){
        int[] a={1,2,3,4,5,6,7,8,9,10};
        System.out.println(f(a,0));
    }
}
//这段代码表示从begin开始,数组内所有数字的和。
代码语言:javascript复制
public class h {
    public static int f(int[] a,int end){
        int cnt=end 1;
        if(cnt==0) return 0;
        int x = f(a,end-1);
        cnt--;
        return x a[cnt];
    }

    public static void main(String[] args){
        int[] a={1,2,3,4,5,6,7,8,9,10};
        System.out.println(f(a,9));
    }
}
//这段代码,表示数组中的从0开始到end的数的求和。
代码语言:javascript复制
public class h {
    public static int f(int[] a,int begin,int end){
        if(begin == end 1) return 0;
        int x = f(a,begin 1,end);
        return x a[begin];
    }

    public static void main(String[] args){
        int[] a={1,2,3,4,5,6,7,8,9,10};
        System.out.println(f(a,0,9));
    }
}
//这段代码表示数组内从begin开始到end结束的数字的和。

0 人点赞