문제 :
Given an array of integers, where all elements but one occur twice, find the unique element.
처음에는 지난번 신고회수 누적처럼 map에 담아서 풀고 있었는데
좀 더 간단한 방법이 있어 다시 풀었다.
function lonelyinteger(a) {
let unique = a.filter(function (val) {
return a.indexOf(val) === a.lastIndexOf(val)
})
return unique[0]
}
indexOf(val)은 특정 값과 일치하는 부분을 배열 앞에서 부터 찾고
lastIndexOf(val)은 역순으로 찾는다.
위 방법으로 배열 내에 중복된 값을 가진 숫자를 filter해 준 후 return
'Algorithm' 카테고리의 다른 글
[프로그래머스/js] 숫자 문자열과 영단어 (0) | 2022.07.06 |
---|---|
[HackerRank/js] Diagonal Difference (0) | 2022.07.05 |
[Hackerrank/js] 중앙값 찾기 (Math.floor) (0) | 2022.07.04 |
[HackerRank/js] Time Conversion (12h를 24h로 변환하기) (0) | 2022.07.04 |
[HackerRank/js] Mini-Max Sum (배열의 합을 구해 비교하기) (0) | 2022.07.04 |