본문 바로가기

CS

삽입정렬

삽입정렬 (Insertion Sort)

  • 2번째 원소부터 시작해서 그 앞의 원소들과 값을 비교해 위치를 정한 뒤, 중간에 있는 원소들을 모두 뒤로 한칸씩 이동시킨 후 삽입하는 알고리즘

시간복잡도

  • 최선의 경우 : O(N) - 모두 정렬이 되어 있을 경우 한번씩만 비교한다
  • 평균, 최악의 경우 : O(N^2)

장점

  1. 정렬이 어느정도 되어 있는 경우일수록 효율적이다
  2. 별도의 메모리 공간이 필요없다 (제자리 정렬)
  3. 안정 정렬이다

단점

  1. 배열이 길어질수록 비효율적이다

선택 정렬과의 차이

- 선택 정렬은 선택 원소 뒤의 값을 무조건 모두 비교하지만, 삽입정렬은 필요한 만큼만 비교를 하기 때문에 더 효율적이다.

 

참고 - Gyoogle

'CS' 카테고리의 다른 글

트랜잭션  (0) 2023.07.20
HTTP HTTPS  (0) 2023.07.13
TCP와 UDP  (0) 2023.07.13
프로세스부터 멀티 스레드까지  (0) 2023.07.06
버블 정렬과 선택 정렬  (0) 2023.07.04