insert sorting

Algorithm 2015. 4. 14. 23:15

/*삽입 정렬은 동작 방식은 매우 간단하다. 

우선 첫번째 원소 arr[0]를 '정렬이 되었다.' 라고 본다. 

그 뒤 인덱스를 하나 증가시킨 후 원소를 비교하게 되는데 만약 arr[1]의 원소가 arr[0]의 원소보다 작다면 swap 과정이 일어나고 

다시 arr[0],arr[1]는 '정렬되었다.' 라고 본뒤 인덱스를 하나 증가시키며 이러한 과정을 배열의 마지막 원소까지 반복하면 정렬이 된다.

*/




public class Insertsorting {


public static void main(String[] args) {

int arr [ ]={9, 7, 5, 3,11,2,14};

for (int i =0; i<7; i++){

//System.out.print(arr [i]);

for (int j =i+1 ; j<7 ; j++){// insert sorting 은  비교 기준이 2번째 부터 시작한다 

if(arr[i]>arr[j]){

int tmp=0;

tmp=arr[i];

arr[i]=arr[j];

arr[j]=tmp;

//   3인덱스와 2인덱스를 비교해서 3인덱스가 작은경우

// 2인덱스에 3인덱스꺼를 넣어주고 

if(i >= 1){

if(arr[i-1]>arr[i]){ // 3인덱스를 2인덱스 옴겼는데  2인덱스가 1인덱스보다 큰경우 

int swp=0;

swp= arr[i-1];

arr[i-1]=arr[i];

arr[i]=swp;

}

}

}

}

System.out.print(arr [i]+",");

}

}

}



'Algorithm' 카테고리의 다른 글

quick sort 나누는 부분 성공  (0) 2015.04.23
Binarysearch  (0) 2015.04.22
merge sort의 합병 부분  (0) 2015.04.21
bubble sort  (0) 2015.04.15
selection sort  (0) 2015.04.14
Posted by 이상욱1
,