package 공부;


public class BubleSort {


public static void main(String[] args) {


int[] ar = { 24, 25, 26, 55, 74, 5 };


int i = 1;

while ( i<ar.length) {

int j = 0;

while (j <ar.length-i ) {

//  버블 정렬은 오른쪽으로 수를 정렬해주는 알고리즘입니다. 

// 하나씩 오른쪽으로 가장 큰수를 정렬해주기 때문에 

// 정렬한 곳은 비교할 이유가 없기에 반복문에서 감소 시켜주어야만 

// 예외가 발생하지 않습니다. 

if (ar[j] > ar[j + 1]) {

int temp = ar[j];

ar[j] = ar[j + 1];

ar[j + 1] = temp;

}

j = j + 1;

}

i = i + 1;

}

for (i = 0; i < ar.length; i++) {

System.out.println(ar[i]);

}

}


}


package 공부;


public class BubleSort {


public static void main(String[] args) {


int[] ar = { 24, 25, 26, 55, 74, 5 };


int i = ar.length;

while ( i>0) {

int j = 0;

while (j <i-1 ) {

//  버블 정렬은 오른쪽으로 수를 정렬해주는 알고리즘입니다. 

// 하나씩 오른쪽으로 가장 큰수를 정렬해주기 때문에 

// 정렬한 곳은 비교할 이유가 없기에 반복문에서 감소 시켜주어야만 

// 예외가 발생하지 않습니다. 

if (ar[j] > ar[j + 1]) {

int temp = ar[j];

ar[j] = ar[j + 1];

ar[j + 1] = temp;

}

j = j + 1;

}

i = i - 1;

}

for (i = 0; i < ar.length; i++) {

System.out.println(ar[i]);

}

}


}





이렇게 감소를 시켜주어서 버블정렬을 해주어만 오류가 생기지 않습니다. 

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6

at 공부.BubleSort.main(BubleSort.java:17)

'Java > 자바 공부' 카테고리의 다른 글

스트링을 숫자로 바꾸기  (0) 2018.01.21
꼭공부) 로또번호  (0) 2018.01.21
선택정렬  (0) 2018.01.20
super() 와 부모  (0) 2018.01.20
오버로딩과 오버라이딩  (0) 2018.01.20

+ Recent posts