자료구조 & 알고리즘
[Algorithm/Java] 선택 정렬 (selection sort)
선택 정렬 (selection sort) 선택정렬은 대상 데이터에서 최대나 최소 데이터를 찾아서, 정렬 방법에따라 알맞은 위치로 이동시키는 방법이다. 선택정렬은 구현 방법이 복잡하고, 시간 복잡도도 O(n^2)로 비효율적이기 때문에 잘 사용하지는 않지만, 응용해서 일부 사용할때도 있기 때문에, 방법은 알아두는것이 좋다. 핵심 이론 이 방법을 처음 접했을때 드는 생각은 굉장히 단순하고 비효율적이라는 생각이 들었다. [ 5, 3, 1, 6, 4, 2] int[] arr = { 5, 3, 1, 6, 4, 2 } 위와 같은 정렬되지 않은 배열이 있을 때, 선택정렬을 이용하여 내림차순으로 정렬해보자. 첫번째 사이클 arr[0]에는 가장 큰수가 와야한다. arr[1]부터 arr[5]까지 모든 값들 중 가장 큰 수 ..