#1.선택정렬
import java.util.*;
class Main {
public int[] solution(int n, int[] arr){
for(int i=0; i<n-1; i++){
int idx=i;
for(int j=i+1; j<n; j++){
if(arr[j]<arr[idx]) idx=j;
}
int tmp=arr[i];
arr[i]=arr[idx];
arr[idx]=tmp;
}
return arr;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int[] arr=new int[n];
for(int i=0; i<n; i++) arr[i]=kb.nextInt();
for(int x : T.solution(n, arr)) System.out.print(x+" ");
}
}
#2.버블정렬
import java.util.*;
class Main {
public int[] solution(int n, int[] arr){
for(int i=0; i<n-1; i++){
for(int j=0; j<n-i-1; j++){
if(arr[j]>arr[j+1]){
int tmp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=tmp;
}
}
}
return arr;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int[] arr=new int[n];
for(int i=0; i<n; i++) arr[i]=kb.nextInt();
for(int x : T.solution(n, arr)) System.out.print(x+" ");
}
#3.삽입정렬
import java.util.*;
class Main {
public int[] solution(int n, int[] arr){
for(int i=1; i<n; i++){
int tmp=arr[i], j;
for(j=i-1; j>=0; j--){
if(arr[j]>tmp) arr[j+1]=arr[j];
else break;
}
arr[j+1]=tmp;
}
return arr;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int[] arr=new int[n];
for(int i=0; i<n; i++) arr[i]=kb.nextInt();
for(int x : T.solution(n, arr)) System.out.print(x+" ");
}
}
'학교 & 학원 이론 수업 > 소프트웨어공학과 수업' 카테고리의 다른 글
이산수학 10주차, 11주차. 트리 (0) | 2023.10.30 |
---|---|
이산수학(3) (0) | 2023.10.21 |
공학수학 (3) (0) | 2023.10.15 |
선형대수학(3) - 벡터의 외적, 내적, 기하학 (0) | 2023.10.15 |
선형대수(2) (0) | 2023.10.14 |