Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit dd4515a

Browse files
添加 1207 独一无二的出现次数 JavaScript版本 使用哈希表和集合的解法
1 parent 7bb935c commit dd4515a

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

‎problems/1207.独一无二的出现次数.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ Go:
119119

120120
JavaScript:
121121
``` javascript
122+
// 方法一:使用数组记录元素出现次数
122123
var uniqueOccurrences = function(arr) {
123124
const count = new Array(2002).fill(0);// -1000 <= arr[i] <= 1000
124125
for(let i = 0; i < arr.length; i++){
@@ -134,6 +135,21 @@ var uniqueOccurrences = function(arr) {
134135
}
135136
return true;
136137
};
138+
139+
// 方法二:使用Map 和 Set
140+
/**
141+
* @param {number[]} arr
142+
* @return {boolean}
143+
*/
144+
var uniqueOccurrences = function(arr) {
145+
// 记录每个元素出现次数
146+
let map = new Map();
147+
arr.forEach( x => {
148+
map.set(x, (map.get(x) || 0) + 1);
149+
})
150+
// Set() 里的元素是不重复的。如果有元素出现次数相同,则最后的set的长度不等于map的长度
151+
return map.size === new Set(map.values()).size
152+
};
137153
```
138154

139155
-----------------------

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /