정수 배열을 첫 번째이자 유일한 인수로 사용하는 JavaScript 함수를 작성해야 합니다.
함수는 배열에 있는 모든 정수가 고유한 횟수만큼 나타나는지 여부를 지정해야 합니다.
그렇다면 함수는 true를 반환하고 그렇지 않으면 false를 반환해야 합니다.
예를 들어 -
입력 배열이 -
인 경우const arr = [7, 5, 5, 8, 2, 4, 7];
그러면 출력은 다음과 같아야 합니다. -
const output = false;
정수 7과 5가 각각 2번씩 나타나기 때문입니다.
먼저 해시 맵을 사용하여 정수를 해당 빈도(발생)에 매핑한 다음 해당 맵을 사용하여 고유한 빈도를 저장하는 세트를 구축합니다.
예시
다음은 코드입니다 -
const arr = [7, 5, 5, 8, 2, 4, 7];
const uniqueAppearances = (arr = []) => {
const map = {};
const set = new Set();
for(let i = 0; i < arr.length; i++){
const el = arr[i];
map[el] = (map[el] || 0) + 1;
};
for(key in map){
const value = map[key];
if(set.has(value)){
return false;
};
set.add(value);
};
return true;
};
console.log(uniqueAppearances(arr)); 출력
다음은 콘솔 출력입니다 -
false