5/4 CODE KATA #7
CODA KATA
Problem
숫자로 이루어진 배열인 nums를 인자로 전달합니다.
숫자중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요.
예를 들어,
nums = [3,2,3]
return 3
//
nums = [2,2,1,1,1,2,2]
return 2
nums
배열의 길이는 무조건 2
개 이상입니다.
Code
function moreThanHalf(nums) {
const result = {}; // 중복값의 개수를 저장하기 위한 빈 객체를 지정
arr.forEach((x) => {
if(result[x]){
result[x] += 1 // 빈 객체에 해당 숫자의 키값이 존재하면 개수 +1
} else {
result[x] = 0; // 빈 객체에 해당 숫자의 키값이 존재하지 않다면 0으로 선언 후
result[x]++ // 1씩 개수 증가
}
}); // result = { '2': 1, '4': 3, '6': 1 }
for(const key in result){ // for.. in 사용
if(result[key] > arr.length / 2) { // 해당 숫자(key)의 개수(value)가 과반수를 넘을경우
return Number(key) // 키값을 숫자값으로 변환 후 바로 리턴(key는 string이기 때문)
}
}
};
const arr = [2, 4, 4, 6, 4];
moreThanHalf(arr) // 4
-
예전에 forEach
, 혹은 reduce
으로 해당 요소의 중복 개수를 구하는 로직을 구현한 적이 있어 이를 응용해보았다.
-
처음 숫자마다의 중복 개수까지는 구현했지만, if(result[key] > arr.length / 2)
, 즉 과반수에 대한 조건을 전혀 생각하지 못하고 접근했었다.(단순한건데 왜 생각을 못했는지 참....)
Author And Source
이 문제에 관하여(5/4 CODE KATA #7), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@dydalsdl1414/54-CODE-KATA-7
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
숫자로 이루어진 배열인 nums를 인자로 전달합니다.
숫자중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요.
예를 들어,
nums = [3,2,3]
return 3
//
nums = [2,2,1,1,1,2,2]
return 2
nums
배열의 길이는 무조건 2
개 이상입니다.
function moreThanHalf(nums) {
const result = {}; // 중복값의 개수를 저장하기 위한 빈 객체를 지정
arr.forEach((x) => {
if(result[x]){
result[x] += 1 // 빈 객체에 해당 숫자의 키값이 존재하면 개수 +1
} else {
result[x] = 0; // 빈 객체에 해당 숫자의 키값이 존재하지 않다면 0으로 선언 후
result[x]++ // 1씩 개수 증가
}
}); // result = { '2': 1, '4': 3, '6': 1 }
for(const key in result){ // for.. in 사용
if(result[key] > arr.length / 2) { // 해당 숫자(key)의 개수(value)가 과반수를 넘을경우
return Number(key) // 키값을 숫자값으로 변환 후 바로 리턴(key는 string이기 때문)
}
}
};
const arr = [2, 4, 4, 6, 4];
moreThanHalf(arr) // 4
예전에 forEach
, 혹은 reduce
으로 해당 요소의 중복 개수를 구하는 로직을 구현한 적이 있어 이를 응용해보았다.
처음 숫자마다의 중복 개수까지는 구현했지만, if(result[key] > arr.length / 2)
, 즉 과반수에 대한 조건을 전혀 생각하지 못하고 접근했었다.(단순한건데 왜 생각을 못했는지 참....)
Author And Source
이 문제에 관하여(5/4 CODE KATA #7), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dydalsdl1414/54-CODE-KATA-7저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)