Java-배열 정렬

1 분 소요

선택정렬(selection sort)

int a[] = { 3, 7, 4, 5, 6, 1, 2 };
    
for (int i = 0; i < a.length ; i++) {
  // 최소값을 저장하기 위한 변수 min 생성후 선택정렬을 하기위한 select i 저장.
  int min = i;
  for (int j = i+1; j < a.length; j++) {
    if (a[min] > a[j]) {
      min = j;
    }
  }
  // 끝까지 돌린후 최소값과 기준이었던 a[i] 값을 바꿈.
  int temp = a[min];
  a[min] = a[i];
  a[i] = temp;
}

System.out.println(Arrays.toString(a));

버블정렬(bubble sort)

int[] arr = {4,2,1,5,3};
int[] temp = new int[5];
int min;
for(int i = 0 ; i <  arr.length -1 ; i ++) {
        for(int j = i+1 ; j < arr.length ; j ++) {
                if(arr[i] > arr[j]) {
                        min = arr[j];
                        arr[j] = arr[i];
                        arr[i] = min;
                }
        }
}
System.out.println(Arrays.toString(arr));
                   

2차원 배열 (=행렬)

- 형식 : 데이터 타입 \[][] 변수 = new 데이터타입[길이\][길이]; ```java  
int \[][] arr = new int [2\][1];
int [][] arr2 = { { 45, 65, 898 }, { 12, 56, 8 }, { 546, 1, 68, 4 } }; ```

2차원 배열을 통한 원소의 합과 평균 구하기.

    int sum = 0;
    int lengthSum = 0;
    for (int i = 0; i < arr2.length; i++) {
           for (int j = 0; j < arr2[i].length; j++) {
              //System.out.print(arr2\[i\][j]);
              //System.out.print(", ");
              sum += arr2\[i\][j];
         }
         lengthSum += arr2[i].length;
    }
    int avg = sum/lengthSum;
    System.out.println("총 합은 " + sum + "이며 평균은 "+ avg + "이다.");

카테고리:

업데이트:

댓글남기기