선택정렬

·Computer Science
선택 정렬 (Selection Sort) 현재 위치에 들어갈 값을 선택해서 정렬하는 배열이다. 일상에서 크기 순으로 나열할때 하나씩 끄집어내서 정렬하는 걸 생각하면 쉽다. 예를 들어서 오름차순으로 정렬하는 경우에, index 0번에 오는 원소는 모든 값중에서 가장 작은 값을 선택해서 정렬한다. 그후 index 1 번에 오게 될 원소를 찾아서 선택하여 정렬하게 되는데, 0 번에 정렬한 값을 제외하고 나머지 값들 중에서 가장 작은 값을 선택해서 정렬하게 되면 된다. 시간 복잡도 : O(N**2) 시간 복잡도는 루프문을 통해 모든 인덱스에 접근해야 하므로, 기본적으로 O(N)이 걸리고, 하나의 루프에서 현재 인덱스 값과 다른 인덱스의 값들과 비교를 각각 한번씩 수행하여 최소값을 찾은 후 현재 인덱스에 있는 값..
1.선택 정렬 int a[10] = {7, 5, 2, 10, 8, 4, 3, 1, 6, 9}; 선택 정렬은 이 중에서 가장 작은 데이터를 선택해서 맨 앞의 데이터와 바꾸고 그 다음으로 작은 데이터를 선택해서 앞에서 두번째인 데이터와 바꾸는 작업을 반복해서 수행한다. 항상 가장 작은 데이터를 선택해서 정렬하는 방법이다. #include #include using namespace std; int a[10] = {7, 5, 2, 10, 8, 4, 3, 1, 6, 9}; int main(void) { for (int i = 0; i < 10; i++) { int min_value = a[i]; // 우선 i번쨰 값을 mininum으로 설정 int min_idx = i; for (int j = i+1; j < ..
minjiwoo
'선택정렬' 태그의 글 목록