這個問題我必須答案 -陣列中的發現三個元素不相鄰
鑑於int數組,返回true,如果值3只出現在數組中恰好3次,3號的是彼此相鄰。
haveThree({3, 1, 3, 1, 3}) → true haveThree({3, 1, 3, 3}) → false haveThree({3, 4, 3, 3, 4}) → false
這是我的解決方案:
public boolean haveThree(int[] nums) {
int count = 0;
for (int i=0;i<nums.length-1;i++) {
if (nums[i] == 3 && nums[i+1] ==3) {
return false;
}
else
if ((nums[i]==3 && nums[i+1]!=3)||(nums[i]==3 && nums[i+1]!=3)) {
count ++;
}
}
return count ==3;
}
它失敗了一些測試。例如{3,1,3,1,3}
應該導致返回true;然而,錯誤返回,我不知道爲什麼。
您是否調試過程序以查看'count'的值? – Keppil
no-我正在使用編碼bat ide –
「if」條件有什麼意義? – kviiri