728x90
반응형
728x90
반응형

선택정렬과 버블정렬에 대해 알아보겠습니다.


먼저 선택정렬(Selection Sort)입니다.



다음은 버블 정렬(Bubble Sort)입니다.



설명은 그림을 통해 이해하셨을 것이라 생각합니다.

자바 정렬 코드입니다.


public class SortingTest {
	public static void main(String[] args) {
		int ran[] = new int[5];
		for(int i=0; i<ran.length; i++){
			ran[i] = (int)(Math.random()*100)+1; //Math.random은 실수이므로 형변환을 해준다.
			System.out.print(ran[i]+" ");
		}System.out.println("");
		
		System.out.print("selection sort :");
		for(int i=0; i<ran.length;i++){
			for(int j=i+1; j<ran.length; j++){
				if(ran[i]>ran[j]){
					int imsi=ran[i];
					ran[i]=ran[j];
					ran[j]=imsi;
				}
			}System.out.print(ran[i]+" ");
		}System.out.println("");
		
		System.out.print("bubble sort : ");
		for(int i=0; i<ran.length;i++){
			for(int j=0; j<ran.length-1-i; j++){
				if(ran[j]>ran[j+1]){
					int imsi = ran[j];
					ran[j]=ran[j+1];
					ran[j+1]=imsi;
				}
			}System.out.print(ran[i]+" ");
		}
	
	}//main end
}//class end


버블정렬 소스 추가

  public class bubbleTest {     public static void main(String[] args) { boolean isCheck = false;         int ran[] = new int[5]; for(int i=0; i<ran.length; i++){     ran[i] = (int)(Math.random()*100)+1; //Math.random은 실수이므로 형변환을 해준다. System.out.print(ran[i]+" "); }System.out.println("");         while(true){             for(int i=0;i<=ran.length-2;i++){     if(ran[i]>ran[i+1]) {     int temp = ran[i];     ran[i]=ran[i+1];     ran[i+1]=temp;     isCheck = true;    }             }             if(isCheck==false) {         break;             }else{                 for(int k=0;k<=ran.length-1;k++) {                     System.out.print(ran[k]+" ");     isCheck = false;     }     } } //while end }// main end } //class end


정렬의 대한 결과입니다.




다음은 삽입 정렬(Insertion Sort)입니다.



출처 - 사진 출처

728x90
반응형
728x90
반응형

+ Recent posts