코딩테스트/LeetCode

🧑‍💻 언어 및 제출 결과사용 언어: JavaScript통과 여부: ✅🧠 풀이 설명Splice + Unshift + Comma Operatornums.splice(nums.length - (k % nums.length))로 뒤에서 k개 요소를 잘라냄nums.unshift(...잘라낸배열)로 잘라낸 요소들을 맨 앞에 삽입Comma Operator를 사용해 unshift 실행 후 수정된 nums 반환나머지 연산 k % nums.length로 k가 배열 길이보다 큰 경우 처리📊 시간/공간 복잡도시간 복잡도:splice O(n) + unShift O(n)= O(n)총합: O(n)공간 복잡도: O(1) - in-place 수정 (잘라낸 임시 배열 제외)📝 추가 설명 (선택)splice 하는 부분에서 단순..
🧑‍💻 언어 및 제출 결과사용 언어: JavaScript통과 여부: ✅🧠 풀이 설명Set을 사용하여 중복 검사 후 고유 값들의 집합 생성원본 값과 크기 비교📊 시간/공간 복잡도시간 복잡도: O(n) - Set 생성공간 복잡도: O(n) - Set 최대 n개 저장📝 추가 설명 (선택)처음에 some + indexOf 조합으로 시도했지만 Time Limit Exceeded 발생O(n²)은 한계가 있다 판단 하여 Set을 통해 O(n)으로 전환함// TLE 발생 코드var containsDuplicate = nums => nums.some((v, i) => nums.indexOf(v) !== i);// indexOf가 매번 처음부터 검색 → O(n²)// 큰 배열에서 시간 초과 발생
수빡이
'코딩테스트/LeetCode' 카테고리의 글 목록