【发布时间】:2016-02-13 11:46:43
【问题描述】:
所以我尝试解释一个朋友制作的这个伪代码,但我不确定我的方法是否返回正确的结果。谁能帮帮我?
我已经完成了一些测试用例,例如[2,0,7] 或 [0,1,4] 或 [0, 8, 0] 的数组将返回 true,但不是以下情况:[1,7,7] 或 [2,6,0] .
Array(list, d)
for j = 0 to d−1 do
for i = 0 to d−1 do
for k = 0 to d−1 do
if list[j] + list[ i] + list[k] = 0 then
return true
end if
end for
end for
end for
return false
我已经用 java 做了这个:
public class One{
public static boolean method1(ArrayList<String> A, int a){
for(int i = 0; i < a-1; i++){
for(int j = 0; j < a-1; j++){
for(int k = 0; k < a-1; k++){
if(Integer.parseInt(A.get(i)+A.get(j)+A.get(k)) == 0){
return true;
}
}
}
}
return false;
}
}
提前致谢
【问题讨论】:
-
谁是
n?! (i < n-1) -
@fanton 纠正了它
-
好的,现在我看到你在一大堆东西上调用
parseInt方法。考虑到您有一个表示为字符串的整数列表(有点奇怪),您可能想做Integer.parseInt(A.get(i)) + Integer.parseInt(A.get(j)) + Integer.parseInt(A.get(k)) == 0而不是您正在做的事情。 -
@fanton 这不会改变任何东西,只是经过测试。
-
测试用例结果是否符合预期且正确?
标签: arraylist nested-loops pseudocode