삽입정렬

삽입정렬 삽입 정렬은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다. 시작은 두번째 리스트 부터 한다. 이유는 첫번째 리스트는 하나이기 때문에 정렬이 되어있다고 본다. 두번째는 temp 에 넣어두고 첫번째와 비교한다. 비교시 temp 가 작다면 첫 번째 리스트를 두번째로 이동한다. temp 는 첫번째에 삽입한다. 이번엔 세번째 리스트를 temp에 넣어둔다. temp보다 큰값이 나올때까지 이동시킨다. temp = 2 6 2 7 8 1.. Read More

선택정렬

선택정렬 주어진 리스트에서 최소값을 찾는다. 최소 값을 찾아서 대상과 교환을 한다. arr.length – 1 만큼 반복한다. 마지막은 할 필요가 없기 때문에 예를 들어보자 min = 6 6 2 7 8 1 min과 2를 비교해서 더 작은 값을 min에다 넣는다. min=2 7과 8 도 비교를한다. 2가 더 작기 때문에 min은 그대로 2다. min과 1을 비교한다. 1이 더 작기때문에 min 1을 넣는다. 6과 1을교환 한다. 이를 반복한다. 소스를 보자! private static void.. Read More

버블정렬

버블정렬 거품 정렬(Bubble sort)은 두 인접한 원소를 검사하여 정렬하는 방법이다. 시간 복잡도가 O(n^2)로 상당히 느리지만, 코드가 단순하기 때문에 자주 사용된다. 원소의 이동이 거품이 수면으로 올라오는 듯한 모습을 보이기 때문에 지어진 이름이다. 6 2 7 8 1 6보다 2이 작기 때문에 교환 2 6 7 8 1 6보다 7이 크기 때문에 교환 하지 않는다. 2 6 7 8 1 7보다 8이 크기 때문에 교환 하지 않는다. 2 6 7 8 1.. Read More