본문 바로가기
  • soldonii's devlog

quicksort3

자바스크립트 정렬 알고리즘 9 : 활용 사례 *Udemy의 "Master the Coding Interview : Data Structures + Algorithms" 강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) 언제 어떤 정렬 알고리즘을 사용하면 좋을지, 간단한 예시로 알아보자. 아래 대답은 Andrei의 의견이며 정답은 아닐 수 있다. //#1 - Sort 10 schools around your house by distance: insertion sort input된 dataset의 크기가 무척 작기 때문에 Insertion Sort가 가장 빠르고, 공간복잡도도 효율적이다. //#2 - eBay sorts listings.. 2019. 11. 5.
자바스크립트 정렬 알고리즘 7 : 언제, 어떤 정렬 알고리즘을 사용해야 할까? *Udemy의 "Master the Coding Interview : Data Structures + Algorithms" 강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) # Insertion Sort(삽입 정렬) 1) dataset의 크기가 작을 때 2) dataset이 거의 정렬이 되어 있을 때 # Merge Sort(합병 정렬) 1) dataset이 아주 방대한 크기인데 내 컴퓨터 메모리의 외부에서 정렬을 수행할 수 있을 경우, Merge Sort의 유일한 단점인 공간복잡도 문제가 해결될 수 있으므로 사용하기에 최적인 상황이다. 2) dataset의 정확도가 의심되거나, 적절한 p.. 2019. 11. 4.
자바스크립트 정렬 알고리즘 6 : Quick Sort *Udemy의 "Master the Coding Interview : Data Structures + Algorithms" 강의에서 학습한 내용을 정리한 포스팅입니다. *자바스크립트를 배우는 단계라 오류가 있을 수 있습니다. 틀린 내용은 댓글로 말씀해주시면 수정하겠습니다. 감사합니다. :) Quick Sort는 Merge Sort보다 직접 구현하기가 더 복잡하다. Quick Sort 또한 Divide and Conquer 개념을 사용하고, 동시에 Pivoting 개념을 활용한다. Quick Sort는 공간복잡도가 O(log n)으로 Merge Sort의 O(n)보다 메모리 효율성이 높은 알고리즘이다. 하지만 주의할 점은, worst 케이스의 경우 시간복잡도가 O(n^2)가 될 수 있다는 점이다. 특히 어.. 2019. 11. 4.