정렬 알고리즘이란 ?
데이터를 큰 순서 또는 작은 순서로 바꾸어 나열하는 알고리즘이다, 정렬을 영어로 표현하면 소트(sort)이므로
소트(sort) 알고리즘이라고도 한다.
정열알고리즘 종류
다양한 정열 알고리즘이 존재하지만 가장 기본적이고 널리 알려진 알고리즘을 네가지로 추려보면,
1. 단순 선택법 (선택 정렬)
2. 단순 교환법 (버블 정렬)
3. 단순 삽입법 (삽입 정렬)
4. 퀵정렬
정도가 있고 그중 오늘 기록할 알고리즘은 단순 선택법 (선택 정렬) 이다.
단순 선택법( 선택 정렬 ) 이란?
가장작은 데이터를 선택하여 맨 앞부터 순서대로 정렬해 나가는 알고리즘
+ 단순하고 구현하기 쉽다.
- 처리속도가 느리기 때문에 데이터가 많을 경우 적합하지 않다.
처리구조
1. 탐색 범위의 최솟값을 찾는 처리
2. 탐색 범위의 최솟값을 맨 앞요소와 교환하는 처리
코트
int[] array = {12,13,11,14,10};
int i = 0; // 전체 반복 변수
int w = 0; // array i 번째 값 저장 변수
while( i < array.length ){
int k = i + 1; // 2번째 칸 비교값 변수
int index = i; // 1번째 칸 비교값 변수
while( k < array.length -1 ){ // array 배열 -1 값
if(array[index] > array[k]){ // 1번째와 2번째 비교
index = k; // 비교값 인덱스저장
}
k++;
}
// 배열 값 교환
w = array[i];
array[i] = array[index];
array[index] = w;
i++;
}
// 출력구문
for(int a=0; a<5; a++){
System.out.println(array[a]);
}
'Algorithm' 카테고리의 다른 글
에라토스테네스의 체 (소수를 찾는 방법) (0) | 2020.04.04 |
---|---|
퀵정렬 (0) | 2020.03.24 |
단순 삽입법 (삽입 정렬) (0) | 2020.03.23 |
단순 교환법 (버블정렬) (0) | 2020.03.19 |