본문 바로가기
학교강의/컴퓨터 알고리즘

쉘 정렬

by Fel.Forest 2023. 9. 15.

쉘 정렬은 삽입 정렬에 전처리과정을 추가한 것

전처리 과정 : 작은 값을 가진 원소들을 배열의 앞 부분으로 옮기며 큰 값을 가진 원소들이 배열의 뒷부분에 자리잡도록 만드는 과정

삽입정렬이 현재 원소를 앞부분에 삽입하기 위해 이웃하는 원소의 숫자끼리 비교하며 한 자리씩 이동하는 단점 보안

전처리과정은 여러 단계로 진행 되며 , 각 단계에서는 일정 간격으로 떨어진 원소들에 대해 삽입 정렬 수행

 

리스트를 일정 간격(gap)의 부분 리스트로 나눔 (이때 간격에 따라 성능이 달라짐)

간격만큼 부분 집합이 만들어짐 간격은 홀수로 해라 이유: 부분 집합이 더 많이 만들어짐 강의 자료 보고 만들어라

쉘 정렬 : 데이터를 부분 집합으로 만들어서 작은 범위의 삽입 정렬을 하는 것

전처리 과정에서는 자리이동이 많이 일어나지 않는다

이거 이동 하는 것은 그림 그려서 보여주는 것이 좋을듯

 

 

'학교강의 > 컴퓨터 알고리즘' 카테고리의 다른 글

최소 신장트리  (1) 2023.11.24
컴퓨터 알고리즘 12주차  (1) 2023.11.17
[ Search ]  (0) 2023.10.06
선택 정렬 알고리즘  (0) 2023.09.15