File tree 3 files changed +48
-0
lines changed
solution/0400-0499/0402.Remove K Digits
3 files changed +48
-0
lines changed Original file line number Diff line number Diff line change 44
44
45
45
<!-- 这里可写通用的实现逻辑 -->
46
46
47
+ 贪心算法
48
+
47
49
<!-- tabs:start -->
48
50
49
51
### ** Python3**
62
64
63
65
```
64
66
67
+ ### ** TypeScript**
68
+
69
+ ``` ts
70
+ function removeKdigits(num : string , k : number ): string {
71
+ let nums = [... num ];
72
+ while (k > 0 ) {
73
+ let idx = 0 ;
74
+ while (idx < nums .length - 1 && nums [idx + 1 ] >= nums [idx ]) {
75
+ idx ++ ;
76
+ }
77
+ nums .splice (idx , 1 );
78
+ k -- ;
79
+ }
80
+ return nums .join (' ' ).replace (/ ^ 0* / g , ' ' ) || ' 0' ;
81
+ };
82
+ ```
83
+
65
84
### ** ...**
66
85
67
86
```
Original file line number Diff line number Diff line change 57
57
58
58
```
59
59
60
+ ### ** TypeScript**
61
+
62
+ ``` ts
63
+ function removeKdigits(num : string , k : number ): string {
64
+ let nums = [... num ];
65
+ while (k > 0 ) {
66
+ let idx = 0 ;
67
+ while (idx < nums .length - 1 && nums [idx + 1 ] >= nums [idx ]) {
68
+ idx ++ ;
69
+ }
70
+ nums .splice (idx , 1 );
71
+ k -- ;
72
+ }
73
+ return nums .join (' ' ).replace (/ ^ 0* / g , ' ' ) || ' 0' ;
74
+ };
75
+ ```
76
+
60
77
### ** ...**
61
78
62
79
```
Original file line number Diff line number Diff line change
1
+ function removeKdigits ( num : string , k : number ) : string {
2
+ let nums = [ ...num ] ;
3
+ while ( k > 0 ) {
4
+ let idx = 0 ;
5
+ while ( idx < nums . length - 1 && nums [ idx + 1 ] >= nums [ idx ] ) {
6
+ idx ++ ;
7
+ }
8
+ nums . splice ( idx , 1 ) ;
9
+ k -- ;
10
+ }
11
+ return nums . join ( '' ) . replace ( / ^ 0 * / g, '' ) || '0' ;
12
+ } ;
You can’t perform that action at this time.
0 commit comments