File tree Expand file tree Collapse file tree 3 files changed +58
-0
lines changed
solution/0500-0599/0503.Next Greater Element II Expand file tree Collapse file tree 3 files changed +58
-0
lines changed Original file line number Diff line number Diff line change @@ -251,6 +251,27 @@ func nextGreaterElements(nums []int) []int {
251
251
}
252
252
```
253
253
254
+ ### ** TypeScript**
255
+
256
+ ``` ts
257
+ function nextGreaterElements(nums : number []): number [] {
258
+ let stack: number [] = [],
259
+ len = nums .length ;
260
+ let res: number [] = new Array (len ).fill (- 1 );
261
+ for (let i = 0 ; i < 2 * len - 1 ; i ++ ) {
262
+ while (
263
+ stack .length !== 0 &&
264
+ nums [stack [stack .length - 1 ]] < nums [i % len ]
265
+ ) {
266
+ res [stack [stack .length - 1 ]] = nums [i % len ];
267
+ stack .pop ();
268
+ }
269
+ stack .push (i % len );
270
+ }
271
+ return res ;
272
+ }
273
+ ```
274
+
254
275
### ** ...**
255
276
256
277
```
Original file line number Diff line number Diff line change @@ -239,6 +239,27 @@ func nextGreaterElements(nums []int) []int {
239
239
}
240
240
```
241
241
242
+ ### ** TypeScript**
243
+
244
+ ``` ts
245
+ function nextGreaterElements(nums : number []): number [] {
246
+ let stack: number [] = [],
247
+ len = nums .length ;
248
+ let res: number [] = new Array (len ).fill (- 1 );
249
+ for (let i = 0 ; i < 2 * len - 1 ; i ++ ) {
250
+ while (
251
+ stack .length !== 0 &&
252
+ nums [stack [stack .length - 1 ]] < nums [i % len ]
253
+ ) {
254
+ res [stack [stack .length - 1 ]] = nums [i % len ];
255
+ stack .pop ();
256
+ }
257
+ stack .push (i % len );
258
+ }
259
+ return res ;
260
+ }
261
+ ```
262
+
242
263
### ** ...**
243
264
244
265
```
Original file line number Diff line number Diff line change
1
+ function nextGreaterElements ( nums : number [ ] ) : number [ ] {
2
+ let stack : number [ ] = [ ] ,
3
+ len = nums . length ;
4
+ let res : number [ ] = new Array ( len ) . fill ( - 1 ) ;
5
+ for ( let i = 0 ; i < 2 * len - 1 ; i ++ ) {
6
+ while (
7
+ stack . length !== 0 &&
8
+ nums [ stack [ stack . length - 1 ] ] < nums [ i % len ]
9
+ ) {
10
+ res [ stack [ stack . length - 1 ] ] = nums [ i % len ] ;
11
+ stack . pop ( ) ;
12
+ }
13
+ stack . push ( i % len ) ;
14
+ }
15
+ return res ;
16
+ }
You can’t perform that action at this time.
0 commit comments