File tree Expand file tree Collapse file tree 3 files changed +60
-0
lines changed
solution/1600-1699/1647.Minimum Deletions to Make Character Frequencies Unique Expand file tree Collapse file tree 3 files changed +60
-0
lines changed Original file line number Diff line number Diff line change 53
53
54
54
<!-- 这里可写通用的实现逻辑 -->
55
55
56
+ 哈希表 + 升序排序
57
+
56
58
<!-- tabs:start -->
57
59
58
60
### ** Python3**
71
73
72
74
```
73
75
76
+ ### ** TypeScript**
77
+
78
+ ``` ts
79
+ function minDeletions(s : string ): number {
80
+ let map = {};
81
+ for (let c of s ) {
82
+ map [c ] = (map [c ] || 0 ) + 1 ;
83
+ }
84
+ let ans = 0 ;
85
+ let vals: number [] = Object .values (map );
86
+ vals .sort ((a , b ) => a - b );
87
+ for (let i = 1 ; i < vals .length ; ++ i ) {
88
+ while (vals [i ] > 0 && i != vals .indexOf (vals [i ])) {
89
+ -- vals [i ];
90
+ ++ ans ;
91
+ }
92
+ }
93
+ return ans ;
94
+ };
95
+ ```
96
+
74
97
### ** ...**
75
98
76
99
```
Original file line number Diff line number Diff line change @@ -61,6 +61,27 @@ Note that we only care about characters that are still in the string at the end
61
61
62
62
```
63
63
64
+ ### ** TypeScript**
65
+
66
+ ``` ts
67
+ function minDeletions(s : string ): number {
68
+ let map = {};
69
+ for (let c of s ) {
70
+ map [c ] = (map [c ] || 0 ) + 1 ;
71
+ }
72
+ let ans = 0 ;
73
+ let vals: number [] = Object .values (map );
74
+ vals .sort ((a , b ) => a - b );
75
+ for (let i = 1 ; i < vals .length ; ++ i ) {
76
+ while (vals [i ] > 0 && i != vals .indexOf (vals [i ])) {
77
+ -- vals [i ];
78
+ ++ ans ;
79
+ }
80
+ }
81
+ return ans ;
82
+ };
83
+ ```
84
+
64
85
### ** ...**
65
86
66
87
```
Original file line number Diff line number Diff line change
1
+ function minDeletions ( s : string ) : number {
2
+ let map = { } ;
3
+ for ( let c of s ) {
4
+ map [ c ] = ( map [ c ] || 0 ) + 1 ;
5
+ }
6
+ let ans = 0 ;
7
+ let vals : number [ ] = Object . values ( map ) ;
8
+ vals . sort ( ( a , b ) => a - b ) ;
9
+ for ( let i = 1 ; i < vals . length ; ++ i ) {
10
+ while ( vals [ i ] > 0 && i != vals . indexOf ( vals [ i ] ) ) {
11
+ -- vals [ i ] ;
12
+ ++ ans ;
13
+ }
14
+ }
15
+ return ans ;
16
+ } ;
You can’t perform that action at this time.
0 commit comments