자바 공부하기 위해 한번 작성하면서 공부를 해보겠다.
https://www.acmicpc.net/problem/2750
2750번: 수 정렬하기
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
정렬부터 시작했는데,
먼저 첫 번째는
Arrays함수를 사용해서 sort함수 이용해서 했다. ㅎㅎㅎㅋㅋㅋㅋ
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int N= scanner.nextInt();
int array[] = new int[N];
for(int i = 0; i<N; i++) {
array[i]= scanner.nextInt();
}
Arrays.sort(array);
for(int i = 0; i<N; i++)
System.out.println(array[i]);
}
}
뭐 함수를 써보긴 해야 하니깐,,
두 번째는
버블 정렬을 사용했다.
import java.util.*;
//버블 정렬
public class Main{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int N= scanner.nextInt();
int array[] = new int[N];
for(int i = 0; i<N; i++)
array[i]= scanner.nextInt();
for(int i = 0; i<N-1; i++) {
for(int row = 0, tem = 0; row <N-1-i; row++) {
if(array[row] > array[row+1]) {
tem = array[row];
array[row] = array[row+1];
array[row+1] = tem;
}
}
}
for(int i = 0; i<N; i++)
System.out.println(array[i]);
}
}
선택정렬
package backjoon;
import java.util.*;
//버블 정렬
public class Main{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int N= scanner.nextInt();
int array[] = new int[N];
for(int i = 0; i<N; i++)
array[i]= scanner.nextInt();
for(int i = 1,j; i<N;i++) {
int compare_num = array[i];
for(j = i-1; j>=0 && array[j]>compare_num; j--)
array[j+1] = array[j];
array[j+1] = compare_num;
}
for(int i = 0; i<N; i++)
System.out.println(array[i]);
}
}
확실히 정렬을 오랜만에 만들어보는데
저학년일 때보다는 낫다,,
더 해보자,,
'study > java' 카테고리의 다른 글
[Tomcat] 설치 및 eclipse 설정 (0) | 2022.01.01 |
---|---|
JAVA 상속(2) (0) | 2021.12.04 |
JAVA 상속 (0) | 2021.12.04 |
java Ajax 연습하기 (0) | 2020.07.25 |
jfreechart bar그래프 두 개 그리기 (0) | 2020.07.23 |