Java
Java) 정렬코드 (버블 정렬, 선택 정렬, 삽입 정렬)
class Sort {
public static void swap(int[]data, int a, int b) {
int temp;
temp = data[a];
data[a]=data[b];
data[b]=temp;
}
public static void viewsort(int[] data) {
for(int s : data) {
System.out.print(s + " ");
}
System.out.println();
}
}
class BubbleSort {
public void sort(int[] data) {
for(int i=data.length-1; i>=0; i--) {
for(int j=0; j<i; j++) {
if(data[j] > data[j+1]) {
Sort.swap(data, j, j+1);
Sort.viewsort(data);
}
}
}
}
}
class SelectSort {
public void sort(int[] data) {
int maxIdx;
for(int i=data.length; i>1; i--) {
maxIdx=0;
for(int j=1; j<i; j++) {
if(data[maxIdx] < data[j]) {
maxIdx = j;
}
}
Sort.swap(data, maxIdx, i-1);
Sort.viewsort(data);
}
}
}
class InsertionSort {
public void sort(int[] data) {
int temp, sub;
for(int i=1; i<data.length; i++) {
temp = data[i];
sub=i-1;
while((sub>=0) && (data[sub]) > temp) {
data[sub+1] = data[sub];
sub--;
}
data[sub+1] = temp;
Sort.viewsort(data);
}
}
}
public class SortMain {
public static void main(String[] args) {
int[] data= {3,2,5,1,4};
Sort.viewsort(data);
System.out.println("----------------");
BubbleSort bs = new BubbleSort();
bs.sort(data);
// SelectSort ss = new SelectSort();
// ss.sort(data);
// InsertionSort is = new InsertionSort();
// is.sort(data);
}
}

댓글 1