We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 8deb5e5 commit 6fdca7fCopy full SHA for 6fdca7f
3sum/whewchews.ts
@@ -0,0 +1,33 @@
1
+function threeSum(nums: number[]): number[][] {
2
+ let result: [number, number, number][] = [];
3
+ const TARGET = 0;
4
+ // TC: O(NlogN)
5
+ nums.sort((a, b) => a - b);
6
+
7
+ for (let i = 0; i < nums.length - 2; i++) {
8
+ if (i > 0 && nums[i] === nums[i - 1]) continue;
9
10
+ let left = i + 1;
11
+ let right = nums.length - 1;
12
13
+ while (left < right) {
14
+ let sum = nums[i] + nums[left] + nums[right];
15
16
+ if (sum === TARGET) {
17
+ result.push([nums[i], nums[left], nums[right]]);
18
+ while (nums[left] === nums[left + 1]) left++;
19
+ while (nums[right] === nums[right - 1]) right--;
20
+ left++;
21
+ right--;
22
+ } else if (sum < TARGET) {
23
24
+ } else {
25
26
+ }
27
28
29
30
+ return result;
31
+}
32
+// TC: O(n^2)
33
+// SC: O(n)
0 commit comments