728x90
[Javascript] (LeetCode) 136. Single Number (Easy)
💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다.
내 풀이
/**
* @param {number[]} nums
* @return {number}
*/
var singleNumber = function(nums) {
return nums.filter((x, i) => nums.indexOf(nums[i]) === nums.lastIndexOf(nums[i]))[0];
};
다른 사람 풀이
function singleNumber(nums) {
return nums.reduce((prev, curr) => prev ^ curr);
}
- xor을 사용하면 같은지 다른지 알수 있다.
- reduce와 xor을 활용해 이렇게 만들수 있다고 한다.
- 잘 이해가 안된다. 다음에 bit manipulation 문제를 많이 접하고 나서 이 문제를 다시 봐야겠다.
'Coding Test > LeetCode' 카테고리의 다른 글
[Javascript] (LeetCode) 125. Valid Palindrome (Easy) (0) | 2022.07.29 |
---|---|
[Javascript] (LeetCode) 242. Valid Anagram (Easy) (0) | 2022.07.28 |
[Javascript] (LeetCode) 387. First Unique Character in a String (Easy) (0) | 2022.07.26 |
[Javascript] (LeetCode) 7. Reverse Integer (Medium) (0) | 2022.07.25 |
[Javascript] (LeetCode) 217. Contains Duplicate (Easy) (0) | 2022.07.24 |
[Javascript] (LeetCode)122. Best Time to Buy and Sell Stock II (Medium) (0) | 2022.07.22 |
[Javascript] (LeetCode)121. Best time to buy and sell stock (Easy) (0) | 2022.07.21 |
[Javascript] (LeetCode) 26. Remove Duplicates from Sorted Array (Easy) (0) | 2022.07.20 |
댓글