Notice
Recent Posts
Recent Comments
Link
drexqq
[Java, 자바] Sorting(정렬).ver2 본문
728x90
반응형
Java를 이용해서 입력받은 숫자를 정렬해주는 코드를 작성해봤다.
코드
package sortingFunc;
import java.util.Scanner;
public class mainClass {
public static void main(String[] args) {
/*
sorting
1. 입력
-> 숫자들, 오름차순/내림차순
2. 처리
-> 오름/내림차순 소팅
2.5 swap()
3. 출력
-> 출력
*/
sorting();
}
static void sorting() {
System.out.println("결과");
System.out.println(java.util.Arrays.toString(userInput()));
}
static int[] userInput() {
Scanner sc = new Scanner(System.in);
System.out.println("몇 개의 숫자를 정렬하시겠습니까 ?");
int numCount = sc.nextInt();
int numArr[] = new int[numCount];
System.out.println("정렬할 숫자를 입력해주세요.");
for (int i = 0; i < numArr.length; i++) {
int num = sc.nextInt();
numArr[i] = num;
}
// 오름차순/내림차순 선택
System.out.println("오름차순(1) / 내림차순(2) 을 선택해주세요.");
int order = sc.nextInt();
sc.close();
proccess(numArr, order);
return numArr;
}
static int[] proccess(int arr[], int ad) {
// 오름,내림차순
boolean b = (ad == 1) ? true : false;
// 스왑
swap(arr, b);
return arr;
}
static int[] swap(int arr[], boolean b) {
int temp;
String msg = (b)?"오름차순을 선택하였습니다":"내림차순을 선택하였습니다.";
System.out.println(msg);
for (int i = 0; i < arr.length-1; i++) {
for (int j = i + 1; j < arr.length; j++) {
// 오름차순
if (b) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
else {
if (arr[i] < arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
return arr;
}
}
728x90
반응형
'공부노트 > 개인공부!' 카테고리의 다른 글
[Java, 자바] Sorting(정렬).ver3 (0) | 2020.06.01 |
---|---|
[Java, 자바] 백준알고리즘 단계별로 풀기 - 4단계 (0) | 2020.05.30 |
[Java, 자바] baseball(숫자야구).ver2 (0) | 2020.05.29 |
[Java, 자바] 성적 통계프로그램.ver3 (0) | 2020.05.28 |
[Java, 자바] 암호화, 복호화(ASCII code) (0) | 2020.05.27 |
Comments