본문 바로가기

2023.11.21-2024.05.31

1207JAVA -JC03 버블정렬

 

 

주어진 코드는 버블 정렬을 사용하여 정수 배열 a를 오름차순으로 정렬한 후 결과를 출력하는 Java 프로그램

 package dec07;

 

 public class JC03 {

  public static void main(String[] args) {

 

  int i, j;

  int temp;

  int a[] = { 75, 95, 85, 100, 50 };//배열 길이 5

 

  for (i = 0; i < 4; i++) {

  for (j = 0; j < 4 - i; j++) {

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

  temp = a[j];

  a[j] = a[j + 1];

  a[j + 1] = temp;

  }

  }

  }

 

  for (i = 0; i < 5; i++) {

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

  }

  }

 }

 

50

75

85

95

100

 

해당 코드에서는 배열의 길이가 5이고,

배열 인덱스가 0부터 시작하기 때문에 j가 4가 되면 a[j + 1]이 배열의 범위를 초과하게 됩니다.

그러므로 j의 범위를 4 - i로 설정하여 현재 패스에서만 필요한 비교를 수행하도록 합니다.

'2023.11.21-2024.05.31' 카테고리의 다른 글

1208JAVA -MultiArray01  (0) 2023.12.08
1208JAVA -Test01  (0) 2023.12.08
1207JAVA - JC02  (1) 2023.12.07
1207JAVA - JC01  (1) 2023.12.07
1207JAVA - Array08  (1) 2023.12.07