Leetcode测试中的问题:
在做leetcode中第15题时遇到的问题:https://leetcode.cn/problems/3sum/submissions/
请问为什么使用注释的写法不正确,使用非注释的写法正确?
我自己debug发现是正确的,是leetcode测试的问题吗?
class Solution {
public List<List<Integer>> threeSum(int[] nums) {
Arrays.sort(nums);
List<List<Integer>> ans = new ArrayList<>();
for (int i = 0; i < nums.length - 1; i++) {
if (i > 0 && nums[i] == nums[i - 1]) continue;
int l = i + 1;
int r = nums.length - 1;
while (l < r){
if (nums[i] + nums[l] + nums[r] < 0) l++;
else if (nums[i] + nums[l] + nums[r] > 0) r--;
else {
// List<Integer> list = new ArrayList<>();
// list.add(nums[i]);
// list.add(nums[l]);
// list.add(nums[r]);
// ans.add(list);
ans.add(Arrays.asList(nums[i],nums[l],nums[r]));
while (l < r && nums[r] == nums[r - 1]) r--;
while (l < r && nums[l] == nums[l + 1]) l++;
l++;
r--;
}
}
}
return ans;
}
}