배열의 정렬(Array Sort)

Joy🌱·2022년 12월 29일
0

☕ Java

목록 보기
14/40
post-thumbnail

💁‍♀️ 배열의 정렬(Array Sort)이란,
배열이나 리스트에서 대소크기에 맞지 않는 숫자가 무작위로 있다고 했을 때 이를 오름차순, 내림차순으로 정렬 해주는 것


👀 배열의 인덱스에 있는 값을 서로 변경

int[] arr = {2, 1, 3};
		
int temp = arr[0];
arr[0] = arr[1];
arr[1] = arr[2];
arr[2] = temp;
		
for(int num : arr) {
	System.out.print(num + " ");
}

💻 Mini Console

1 3 2 

👀 배열 오름차순 정렬

int[] iarr = {2, 5, 4, 6, 1, 3};

>>> 0번째 인덱스는 비교할 필요가 없으므로 1번 인덱스부터 비교 시작
>>> 기준 인덱스를 이동(증가)시키는 for(1번 인덱스인 "5"기준으로 하기 때문에 i = 1)
for(int i = 1; i < iarr.length; i++) { 
			
	>>> 인덱스가 증가할 때마다 처음부터 해당 인덱스 - 1까지의 값을 비교하는 반복문
	for(int j = 0; j < i; j++) { // j는 i보다 -1까지만 반복할 것
				
		>>> 오름차순 정렬을 위한 처리
		>>> 만약, 내림차순으로 구현하고자 한다면 부등호 방향을 반대로 처리
		if(iarr[i] < iarr[j]) { >>> 만약 j가 i보다 클 때 값의 위치 변경 

			>>> 값 위치 변경
			int temp = iarr[i];
			iarr[i] = iarr[j];
			iarr[j] = temp;	
		}	
	}
	System.out.println(i + "회차 : " + Arrays.toString(iarr)); 
    >>> 배열에 담긴 값이 어떻게 바뀌는지 출력해주는 메소드
}
>>> 최종 결과
System.out.println("정렬 완료 : " + Arrays.toString(iarr));

💻 Mini Console

1회차 : [2, 5, 4, 6, 1, 3]
2회차 : [2, 4, 5, 6, 1, 3]
3회차 : [2, 4, 5, 6, 1, 3]
4회차 : [1, 2, 4, 5, 6, 3]
5회차 : [1, 2, 3, 4, 5, 6]
정렬 완료 : [1, 2, 3, 4, 5, 6]

👀 Arrays.sort()

int[] iarr = {2, 5, 4, 6, 1, 3};
		
int[] copy = iarr.clone();
System.out.println("copy 정렬 전 : " + Arrays.toString(copy));
Arrays.sort(copy); 
System.out.println("copy 정렬 후 : " + Arrays.toString(copy));

💻 Mini Console

copy 정렬 전 : [2, 5, 4, 6, 1, 3]
copy 정렬 후 : [1, 2, 3, 4, 5, 6]

📌 Ref.

* Arrays.sort() 메소드를 이용하면 훨씬 빠르고 간단하게 정렬을 할 수 있음

profile
Tiny little habits make me

0개의 댓글

관련 채용 정보