diff --git a/contains-duplicate/meteorqz6.js b/contains-duplicate/meteorqz6.js new file mode 100644 index 0000000000..945dc7a202 --- /dev/null +++ b/contains-duplicate/meteorqz6.js @@ -0,0 +1,12 @@ +// 시간 복잡도: O(n) +// 공간 복잡도: O(n) + +/** + * @param {number[]} nums + * @return {boolean} + */ +var containsDuplicate = function (nums) { + const set = new Set(nums); + if (set.size < nums.length) return true; + else return false; +}; diff --git a/longest-consecutive-sequence/meteorqz6.js b/longest-consecutive-sequence/meteorqz6.js new file mode 100644 index 0000000000..9165d8c39f --- /dev/null +++ b/longest-consecutive-sequence/meteorqz6.js @@ -0,0 +1,25 @@ +// 시간 복잡도: O(n log n) +// 공간 복잡도: O(n) + +/** + * @param {number[]} nums + * @return {number} + */ +var longestConsecutive = function (nums) { + let cnt = 0; + const set = new Set(nums); + const sortArray = Array.from(set).sort((a, b) => a - b); + const cntArray = []; + + for (let i = 0; i < sortArray.length; i++) { + if (sortArray[i] + 1 !== sortArray[i + 1]) { + cntArray.push(cnt + 1); + cnt = 0; + } else { + cnt += 1; + } + } + + if (nums.length === 0) return 0; + else return Math.max(...cntArray); +}; diff --git a/two-sum/meteorqz6.js b/two-sum/meteorqz6.js new file mode 100644 index 0000000000..f185d5d4c9 --- /dev/null +++ b/two-sum/meteorqz6.js @@ -0,0 +1,17 @@ +// 시간 복잡도: O(n^2) +// 공간 복잡도: O(1) + +/** + * @param {number[]} nums + * @param {number} target + * @return {number[]} + */ +var twoSum = function (nums, target) { + for (let i = 0; i < nums.length; i++) { + for (let j = i + 1; j < nums.length; j++) { + if (nums[i] + nums[j] === target) { + return [i, j]; + } + } + } +};