1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
package 함수2.자가진단07;
public class Main {
public static void descending() {
Scanner sc = new Scanner(System.in);
int arr [] = new int [10];
for(int i=0;i<10;i++) { //10개의 값을 입력받아서 배열에 저장.
arr[i] = sc.nextInt();
}
for(int i=0;i<9;i++) { // 9번의 비교를 통하여 내림차순 정렬.
for(int j=0;j<9;j++) { // 9번의 비교중 한번의 비교동안 9개의 배열값을 비교.
if(arr[j] < arr[j+1]) { // 만약 ex) 0번쨰방보다 1번째방이 클때 정렬.
int tmp = arr[j]; // 기존 0번째방의 값은 임의의 변수에 임시저장.
arr[j] = arr[j+1]; // 1번째 방의 값은 0번째 방으로 이동.
arr[j+1] = tmp; // 1번째 방에 0번째 방의 값을 저장.
}
}
for(int k=0;k<10;k++) { // 저장된 배열들을 첫번째 for문이 종료될때[i] 출력.
System.out.print(arr[k]+" ");
}
System.out.println();
}
}
public static void main(String[] args) {
descending(); //생성한 함수 호출
}
}
|
> 15 93 26 8 43 10 25 88 75 19 를 기준으로 봤을때,
93은 15부다 큽니다.
그러므로 93은 15의 자리에 들어오게 되고 15는 93의 자리에 들어오게되어
93 15 26 8 43 10 25 88 75 19가 됩니다.
또 이기준에서 26은 15보다 크므로 자리교체가되며,
이방식을 통하여 0번째방에 9번째 방의 순서를 뒤집고,
그 for문이 한번 종료되게 되면 그때 배열의 값을 출력하는 방법을 사용하였습니다.
'알고리즘 > Jungol' 카테고리의 다른 글
[Java] 정올기초다지기 함수2-형성평가01 (0) | 2020.04.07 |
---|---|
[Java] 정올기초다지기 함수2-자가진단08 (0) | 2020.04.05 |
[Java] 정올기초다지기 함수2-자가진단06 (0) | 2020.04.05 |
[Java] 정올기초다지기 함수2-자가진단05 (0) | 2020.04.01 |
[Java] 정올기초다지기 함수2-자가진단04 (0) | 2020.03.30 |