diff --git a/contains-duplicate/solbijae.ts b/contains-duplicate/solbijae.ts new file mode 100644 index 000000000..87f020a24 --- /dev/null +++ b/contains-duplicate/solbijae.ts @@ -0,0 +1,11 @@ +function containsDuplicate(nums: number[]): boolean { + const set = new Set(nums); + const setSize = set.size; + const numsLength = nums.length; + + return setSize !== numsLength ? true : false; + + // Big O + // 시간 복잡도: O(n) 한번씩 순회하면서 확인 + // 공간 복잡도: O(n) Set을 사용해 배열 크기만큼 메모리가 더 사용됨 +}; diff --git a/house-robber/solbijae.ts b/house-robber/solbijae.ts new file mode 100644 index 000000000..42880c7d5 --- /dev/null +++ b/house-robber/solbijae.ts @@ -0,0 +1,30 @@ +function rob(nums: number[]): number { + // 첫시도: 아예 떨어져있는 경우를 고려하지 않음 (통과 안됨) + // let evenSum = 0; + // let oddSum = 0; + + // for (let i=0; i a-b); + // let max = 1; + // let current = 1; + + // for (let i=0; i b[1] - a[1]) + .slice(0, k) + .map(([key]) => key); +}; + +// 시간 복잡도: O(n log n) +// 공간 복잡도: O(n) diff --git a/two-sum/solbijae.ts b/two-sum/solbijae.ts new file mode 100644 index 000000000..b6ff2e6b9 --- /dev/null +++ b/two-sum/solbijae.ts @@ -0,0 +1,19 @@ +function twoSum(nums: number[], target: number): number[] { + // 첫 코드: 시간 복잡도가 O(n^2)로 개선 필요 + // for (let i=0; i