![]() |
![]() |
Ch 02. 알고리즘 - 05. 정렬 알고리즘 - 삽입정렬(Insertion Sort)
삽입정렬은 앞의 숫자가 선택된 숫자보다 큰지 비교하며 선택값 위치에 삽입하는 정렬 방법.
앞의 데이터들은 이미 정렬이 된 것으로 간주하고 정렬하며
앞의 값과 비교를 하기 때문에 전체 배열 중 0번 인덱스가 아닌 1번 인덱스부터 앞의 값과 비교함!
정렬된 부분과 정렬되지 않은 부분으로 나눠서 정렬이 되지 않은 부분에 있는 데이터를 정렬된 데이터와 비교해서 교환하는 방식이라고 생각하면 된다.
비교할 데이터가 많은 경우에는 효율이 좋지 않음. 이미 내림차순으로 정렬이 되어있는 경우 오름차순으로 변경할 때 매번 끝까지 비교해야 하기 때문에 속도가 엄청나게 느려짐.
Ch 02. 알고리즘 - 06. 정렬 알고리즘 - 힙정렬(Heap Sort)
힙( 완전 이진트리 구조를 가진 자료구조 )의 특성을 사용해 정렬하는 방식
최소값 또는 최대값을 빠르게 가져오기 위해 고안됨.
형제 노드 사이에서는 대소 관계가 정해져 있지 않음.
힙 트리
추가되는 값을 맨 뒤 자식노드로 놓고 해당 값을 부모노드와 비교해서 부모노드가 더 작으면 교환함
선생님이 화면에다 코드를 띄워놓고 원리를 차근차근 말씀해주시는게 굉장히 좋다.
제공해주시는 코드 중에 이거 구현한 코드도 있나 한번 찾아봐야겠다.
코드 작성해서 디버깅해보기
힙 정렬은 시간복잡도와 메모리 효율이 좋음. 이론적으로는 다른 알고리즘보다 우위에 있지만 안전성을 보장하지 못함. 가장 큰 값이나 가장 작은 값만 필요할때 사용하기.
먼가 하다보니까 수학공식 배우는거같아서 좀 신기하다.
https://bit.ly/37BpXiC
공백제외 : 총 598자 (1,134byte)
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #C#과유니티로배우는게임개발올인원패키지Online. #C#과 유니티로 배우는 게임 개발 올인원 패키지 Online.
'인강 > 패스트캠퍼스_환급챌린지' 카테고리의 다른 글
[패스트캠퍼스 챌린지 최종 후기] (0) | 2021.10.13 |
---|---|
마지막 데일리 미션 제출 완료 (0) | 2021.10.05 |
[패스트캠퍼스 챌린지 29일차] 문제 풀이로 실전 응용력을 다지는 필수 자료구조 (2) | 2021.10.04 |
4주차 데일리 미션 제출 완료 (0) | 2021.10.03 |
[패스트캠퍼스 챌린지 28일차] 문제 풀이로 실전 응용력을 다지는 필수 자료구조 (0) | 2021.10.03 |
댓글