선택정렬

    [알고리즘] 정렬 - 선택 정렬(Selection Sort) (자바/Java)

    [알고리즘] 정렬 - 선택 정렬(Selection Sort) (자바/Java)

    목차 선택 정렬 개념 주어진 자료들 중 가장 작은 값의 원소부터 차례대로 선택하여 위치를 교환하는 방식으로 정렬하는 알고리즘 시간 복잡도: O(n^2) 정렬 과정 첫 번째 원소를 두 번째부터 마지막 원소까지 비교하여 가장 작은 값과 자리 교환 2가 가장 작은 원소이고, 그 값의 index는 2이므로 arr[0]과 arr[1] 교환, arr[0]은 가장 작은 값으로 정렬 완료 두 번째, 세 번째 … 끝에서 두 번째 원소까지 같은 과정을 반복함 코드 package sort; import java.util.Arrays; public class SelectionSort { public static void main(String[] args) { int[] arr = { 30, 15, 2, 8, 21, 7 }; ..

    [백준] 2750 - 수 정렬하기: (자바/Java) 선택 정렬(Selection Sort)

    문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 선택 정렬로 result 배열을 새로 만들어 정렬하였다. 이중 for loop를 돌며 가장 작은 원소를 맨 앞으로 두는 과정을 반복한다. 시간 복잡도는 O(n^2)로, 상대적으로 비효율적인 알고리즘이다. package BOJ0726; import java.util.Scanner; public class BOJ_2750_수정렬 { public static ..

출처: https://gmnam.tistory.com/157 [Voyager:티스토리]