알고리즘

#1.0 선택정렬 (JAVA)

코딩클로스 2020. 7. 7. 20:05

 

 

public class Main {

 

private static void selectionSort(int []arr) {

 

selectionSort(arr,0);

 

}

 

private static void selectionSort(int []arr,int start) {

 

if(start < arr.length-1) {

 

int min_index=start;

 

for(int i=start; i<arr.length; i++) {

if(arr[i]<arr[min_index]) min_index=i;

}

swap(arr,start,min_index);

selectionSort(arr,start+1);

}

}

 

 

 

private static void swap(int[] arr, int start, int min_index) {

int tmp =arr[start];

arr[start]=arr[min_index];

arr[min_index]=tmp;

 

}

 

private static void printArray(int[] arr) {

 

for(int data : arr) {

System.out.print(data+" ");

 

}

}

 

public static void main(String[] args) {

// TODO Auto-generated method stub

 

int a[]= {5,3,2,6,7,1,4};

 

printArray(a);

selectionSort(a);

System.out.print("\n");

printArray(a);

}

 

}

 

'알고리즘' 카테고리의 다른 글

구름 문제 근묵자흑  (0) 2020.11.18
백준 11057 오르막 수  (0) 2020.11.17
2.2 [자료구조 알고리즘] 비트연산 완전정복  (0) 2020.07.12
정렬 팁  (0) 2020.07.11
2.1 [자료구조 알고리즘] 비트연산 완전정복  (0) 2020.07.08