将数组作为用户的输入。该数组包含整数。添加一些,全部,或者只是一个就足够了,以获得尽可能接近100的总和。
我的问题是我真的不知道如何处理循环。我已经尝试过两个嵌套,但是我发现不知道数组中可能需要多少个整数才能计算。
我的循环到目前为止循环每个整数:
//looping over all integers in the array
for (int i = 0; i < myArray.length; i++) {
//check already here if it is close to 100?
//compare the integer above to the next
for (int j = i + 1; nextWeight < myArray.length; j++) {
//the results should be saved temporary to comparision to new sums
}
}
我知道它并不多,我知道它可能以某种方式涉及动态编程。
有没有人有任何可以帮助我的想法?
答案 0 :(得分:0)
通过我对您的问题的解释,您最大的问题在于您的算法。您应该首先决定算法,然后转到编码。如果我想做你要问的事情,我会先按升序或降序对数组进行排序。有许多排序算法。但是,我认为你所看到的是一个子集求和问题,它可以通过递归二叉树遍历算法来解决。我不会给你代码,但是如果你有时间去研究它就会有所帮助。