File tree Expand file tree Collapse file tree 3 files changed +88
-0
lines changed
solution/0200-0299/0259.3Sum Smaller Expand file tree Collapse file tree 3 files changed +88
-0
lines changed Original file line number Diff line number Diff line change @@ -83,6 +83,37 @@ class Solution {
8383}
8484```
8585
86+ ### ** JavaScript**
87+
88+ ``` js
89+ /**
90+ * @param {number[]} nums
91+ * @param {number} target
92+ * @return {number}
93+ */
94+ var threeSumSmaller = function (nums , target ) {
95+ let len = nums .length ;
96+ if (len < 3 ) return 0 ;
97+ nums .sort ((a , b ) => a - b)
98+ let res = 0 ;
99+ for (let i = 0 ; i < len - 2 ; i++ ) {
100+ let left = i + 1 , right = len - 1 ;
101+ if (nums[i] + nums[left] + nums[i + 2 ] >= target) break ;
102+ while (left < right) {
103+ if (nums[i] + nums[left] + nums[right] < target) {
104+ res += (right - left);
105+ left++ ;
106+ continue ;
107+ } else {
108+ right-- ;
109+ continue ;
110+ }
111+ }
112+ }
113+ return res;
114+ };
115+ ```
116+
86117### ** ...**
87118
88119```
Original file line number Diff line number Diff line change @@ -99,6 +99,37 @@ class Solution {
9999}
100100```
101101
102+ ### ** JavaScript**
103+
104+ ``` js
105+ /**
106+ * @param {number[]} nums
107+ * @param {number} target
108+ * @return {number}
109+ */
110+ var threeSumSmaller = function (nums , target ) {
111+ let len = nums .length ;
112+ if (len < 3 ) return 0 ;
113+ nums .sort ((a , b ) => a - b)
114+ let res = 0 ;
115+ for (let i = 0 ; i < len - 2 ; i++ ) {
116+ let left = i + 1 , right = len - 1 ;
117+ if (nums[i] + nums[left] + nums[i + 2 ] >= target) break ;
118+ while (left < right) {
119+ if (nums[i] + nums[left] + nums[right] < target) {
120+ res += (right - left);
121+ left++ ;
122+ continue ;
123+ } else {
124+ right-- ;
125+ continue ;
126+ }
127+ }
128+ }
129+ return res;
130+ };
131+ ```
132+
102133### ** ...**
103134
104135```
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @param {number } target
4+ * @return {number }
5+ */
6+ var threeSumSmaller = function ( nums , target ) {
7+ let len = nums . length ;
8+ if ( len < 3 ) return 0 ;
9+ nums . sort ( ( a , b ) => a - b )
10+ let res = 0 ;
11+ for ( let i = 0 ; i < len - 2 ; i ++ ) {
12+ let left = i + 1 , right = len - 1 ;
13+ if ( nums [ i ] + nums [ left ] + nums [ i + 2 ] >= target ) break ;
14+ while ( left < right ) {
15+ if ( nums [ i ] + nums [ left ] + nums [ right ] < target ) {
16+ res += ( right - left ) ;
17+ left ++ ;
18+ continue ;
19+ } else {
20+ right -- ;
21+ continue ;
22+ }
23+ }
24+ }
25+ return res ;
26+ } ;
You can’t perform that action at this time.
0 commit comments