본문 바로가기

알고리즘

정렬 알고리즘

정렬 알고리즘 중요한 이유
탐색을 도와줌
//빨리 찾기 위함

 



버블정렬

두 숫자를 비교, 큰 숫자를 오른쪽으로 정렬
outer 루프 한번 돌때마다 ele 최종위치 확정
핵심) 배열길이 -1번 도는데 각 루프마다 몇번 정렬할건지



선택정렬
기준을 정하고 모두 비교 후 최소값을 찾는다.
기준보다 최소값이 더 작으면 최소값과 다른 값 비교
마지막에 기준을 임시변수에 넣는다.
다음 루프에서는 1번째부터 검사




삽입정렬
처음 2개의 값 정렬후, 배열 크기만큼 ele 1개씩 추가해서
추가요소와 이전 요소들 비교해서 이전요소가 크면 다음 인덱스로 갚이 밀리고
추가요소보다 작은 값을 발견하면 그 앞에 추가요소가 들어감


합병정렬 merge sort
하나의 list를 1이 될때까지 2로 나눈다.
옆에 있는 그룹과 병합하여 1개의 리스트를 만든다.
분열 => 정렬 => 합병

//재귀함수의 호출 순서를 면밀히 파악하는것이 중요

 

https://gmlwjd9405.github.io/2018/05/08/algorithm-merge-sort.html