studyHard
article thumbnail
정렬 알고리즘 (Selection, Insertion, Merge, Quick)
알고리즘/Sort 2023. 4. 21. 16:14

선택정렬 (Selection sort) 주어진 자료들 중에 현재 위치에 맞는 자료를 찾아 선택하여 위치를 교환하는 알고리즘. 한번 순회를 돌게 되면알고리즘 상 전체 자료 중 가장 작은 값의 자료가 0번째 인덱스에 위치하게 되므로, 그다음 순회부터는 1번 인덱스부터 순회를 돌며 반복하면 된다. 0번 인덱스 ~ n번 인덱스 중 가장 작은 값을 찾아 0번째 인덱스와 스왑 1번 인덱스 ~ n번 인덱스 중 가장 작은 값을 찾아 1번째 인덱스와 스왑 ... n-1번 인덱스 ~ n번 인덱스 중 가장 작은 값을 찾아 n번째 인덱스와 스왑 선택정렬은 현재 자료가 정렬이 되어있건 말건 무조건 전체 리스트를 순회, 검사하기 때문에 최선의 경우든 최악의 경우든 한결같이 O(n^2)의 시간복잡도를 가지고 있다. function..

article thumbnail
버블 정렬(bubble sort)
알고리즘/Sort 2023. 4. 13. 17:24

버블 정렬(Bubble Sort)알고리즘의 개념 요약 오름차순을 기준으로 정렬 서로 인접한 두 원소를 검사하여 정렬 인접한 2개의 레코드를 비교하여 크기가 순서대로 되어 있지 않으면 서로 교환 선택 정렬과 기본 개념이 유사 버블 정렬(Bubble Sort)알고리즘의 구체적인 개념 버블 정렬은 첫 번째 자료와 두 번째 자료를, 두 번째 자료와 세 번째 자료를,... 이런 식으로 (마지막-1)번째 자료와 마지막 자료를 비교하여 교환하면서 자료를 정렬한다 1회전을 수행하고 나면 가장 큰 자료가 맨 뒤로 이동하므로, 2회전 에서는 맨 끝에 있는 자료는 정렬에서 제외되고, 2회전을 수행하고 나면 끝에서 두 번째 자료까지는 정렬에서 제외된다. 이렇게 정렬을 1회전 수행할 때마다 정렬에서 제외되는 데이터가 하나씩 늘..