有没有一种方法可以将采用整数对象集合并将这些元素添加到递归函数的迭代函数转换为递归函数?

问题描述

最初,我们被鼓励以递归的方式解决问题,但到目前为止,我只能想到一个交互式的问题。

import java.util.*;

public class Problem1 {

    static Integer add(Collection integers) {
        Integer sum = 0;
    
        Iterator iterator = integers.iterator();        
    
        while (iterator.hasNext()) {
            
            sum = sum + (Integer) iterator.next();
        }
        return sum;
        
    }
}

解决方法

一种方法是使用,然后在使用迭代器递归时删除元素。

import json

def search(q):
    with open("config.json") as f:
        data = json.load(f)
        print(data[q])
search(q="role_id")
,

尝试一下。

static Integer add(Iterator it) {
    if (!it.hasNext())
        return 0;
    else
        return (Integer)it.next() + add(it);
}

static Integer add(Collection integers) {
    return add(integers.iterator());
}

Collection integers = List.of(1,2,3,4);
System.out.println(add(integers));

输出

10