Coding Test Study
Problems
Categories
๐ Learning Paths
Edit Solution
Language
JAVA
PYTHON
CPP
JAVASCRIPT
Code
class Solution { public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>> res = new ArrayList<>(); Arrays.sort(nums); for (int i = 0; i < nums.length - 2; i++) { if (i > 0 && nums[i] == nums[i - 1]) continue; int left = i + 1, right = nums.length - 1; while (left < right) { int sum = nums[i] + nums[left] + nums[right]; if (sum == 0) { res.add(Arrays.asList(nums[i], nums[left], nums[right])); while (left < right && nums[left] == nums[left + 1]) left++; while (left < right && nums[right] == nums[right - 1]) right--; left++; right--; } else if (sum < 0) { left++; } else { right--; } } } return res; } }
Notes
[์๋ ํ์ด ยท gpt-4.1-mini] ๋ฐฐ์ด์ ์ ๋ ฌํ ๋ค, ํ ์์๋ฅผ ๊ณ ์ ํ๊ณ ๋๋จธ์ง ๋ ์์๋ฅผ ํฌํฌ์ธํฐ๋ก ํ์ํ์ฌ ํฉ์ด 0์ด ๋๋ ์ธ ์๋ฅผ ์ฐพ๋๋ค. ์ค๋ณต ๊ฒฐ๊ณผ๋ฅผ ํผํ๊ธฐ ์ํด ํฌ์ธํฐ ์ด๋ ์ ์ค๋ณต ์์๋ฅผ ๊ฑด๋๋ด๋ค. ์๊ฐ O(n^2) ยท ๊ณต๊ฐ O(n) ์ ๋ ฌ ๊ณต๊ฐ ๋ฐ ๊ฒฐ๊ณผ ์ ์ฅ ๊ณต๊ฐ ์ฃผ์: ์ค๋ณต ์์๋ฅผ ๊ฑด๋๋ฐ์ง ์์ผ๋ฉด ์ค๋ณต๋ ๊ฒฐ๊ณผ๊ฐ ํฌํจ๋ ์ ์๋ค.
Save
Cancel