mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
Merge pull request #845 from Jerry-306/patch-36
添加 1207 独一无二的出现次数 JavaScript版本 使用哈希表和集合的解法
This commit is contained in:
@ -119,6 +119,7 @@ Go:
|
|||||||
|
|
||||||
JavaScript:
|
JavaScript:
|
||||||
``` javascript
|
``` javascript
|
||||||
|
// 方法一:使用数组记录元素出现次数
|
||||||
var uniqueOccurrences = function(arr) {
|
var uniqueOccurrences = function(arr) {
|
||||||
const count = new Array(2002).fill(0);// -1000 <= arr[i] <= 1000
|
const count = new Array(2002).fill(0);// -1000 <= arr[i] <= 1000
|
||||||
for(let i = 0; i < arr.length; i++){
|
for(let i = 0; i < arr.length; i++){
|
||||||
@ -134,6 +135,21 @@ var uniqueOccurrences = function(arr) {
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 方法二:使用Map 和 Set
|
||||||
|
/**
|
||||||
|
* @param {number[]} arr
|
||||||
|
* @return {boolean}
|
||||||
|
*/
|
||||||
|
var uniqueOccurrences = function(arr) {
|
||||||
|
// 记录每个元素出现次数
|
||||||
|
let map = new Map();
|
||||||
|
arr.forEach( x => {
|
||||||
|
map.set(x, (map.get(x) || 0) + 1);
|
||||||
|
})
|
||||||
|
// Set() 里的元素是不重复的。如果有元素出现次数相同,则最后的set的长度不等于map的长度
|
||||||
|
return map.size === new Set(map.values()).size
|
||||||
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
Reference in New Issue
Block a user