Algorithm/개념 정리

배열 요소 정렬

배열 요소를 역순으로 정렬하기

int n = 5;
int[] a = new int[n];
for (int idx = 0; idx < n/2; idx++) {
	a[idx] = a[n - idx - 1];
}
// 배열 요소에 값을 읽어 들여 역순으로 정렬

import java.util.Arrays;
import java.util.Scanner;

class ReverseArray {
    //--- 배열 요소 a[idx1]과 a[idx2]의 값을 바꿈 ---//
    static void swap(int[] a, int idx1, int idx2) {
        int t = a[idx1];  a[idx1] = a[idx2];  a[idx2] = t;
    }

    //--- 배열 a의 요소를 역순으로 정렬 ---//
    static void reverse(int[] a) {
        for (int i = 0; i < a.length / 2; i++)
            swap(a, i, a.length - i - 1);
    }

    public static void main(String[] args) {
        Scanner stdIn = new Scanner(System.in);

        System.out.print("요솟수: ");
        int num = stdIn.nextInt();         // 요솟수

        int[] x = new int[num];            // 요솟수가 num인 배열

        for (int i = 0; i < num; i++) {
            System.out.print("x[" + i + "] : ");
            x[i] = stdIn.nextInt();
        }

        reverse(x);        // 배열 a의 요소를 역순으로 정렬

        System.out.println("요소를 역순으로 정렬했습니다.");
        System.out.println("x = " + Arrays.toString(x));
    }
}

두 값의 교환

static void swap(int[] a, int idx1, int idx2) {
    int t = a[idx1];
    a[idx1] = a[idx2];
    a[idx2] = t;
}

 

배열의 전체 요소 표시

Arrays.toString();

'Algorithm > 개념 정리' 카테고리의 다른 글

소수 나열하기  (0) 2022.11.11
기수 변환하기  (0) 2022.11.11
배열의 요솟값 결정하기  (0) 2022.11.09
논리 연산과 드모르간 법칙  (0) 2022.11.08
시간 복잡도 (Time Complexity)  (0) 2022.11.07