๐Algorithm
LeetCode [JS] > Third Maximum Number
devWarrior
2025. 3. 26. 23:53
โ ๋ฌธ์
https://leetcode.com/problems/third-maximum-number/description/
โ ํ์ด
Set์ผ๋ก ์ค๋ณต์ ๊ฑฐํ๊ณ ์์ํ๋ฉด ํธํ๊ฒ ๊ตฌํ ์ ์๋ค. ์๊ฐ๋ณต์ก๋๋ O(NlogN) ์ผ๋ก ์ด๋ฐ ์ด์ ๋ js sorting algorithm ์ด tim sort ๋ฐฉ์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ด๋ค. ์ฐธ๊ณ ๋ก tim sort ๋ฐฉ์์ merge sort ์ insertion sort๋ฅผ ๊ฒฐํฉํ์ฌ ๋ง๋ sorting ๋ฐฉ์์ด๋ผ๊ณ ํ๋ค. ์์ธํ ์๊ณ ์ถ์ผ๋ฉด https://d2.naver.com/helloworld/0315536 ๋ฅผ ๋ณด๋ฉด ๋๋ค.
/**
* @param {number[]} nums
* @return {number}
*/
var thirdMax = function (nums) {
const sorted = [...new Set(nums)].sort((prev, next) => next - prev);
let answer = undefined;
for (let i = 0; i < 3; ++i) {
const num = sorted[i];
if (num === undefined) {
return sorted[0];
}
answer = num;
}
return answer;
};