1. selection sort
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package Package1;
import java.util.Scanner;
import java.util.Arrays;
public class SelectionSort {
public static void main (String args[]){
Scanner sc = new Scanner(System.in);
int[] arr = new int[5];
System.out.println("input numbers:");
for (int i=0;i<5;i++){
arr[i]= sc.nextInt();
}
for (int i=0;i<4; i++){
int min = i;
for(int j=i+1; j<5; j++){
if (min>arr[j]){
min = j;
}
int temp = i;
min = j;
j = temp;
}
}
System.out.println("sorting completed: "+Arrays.toString(arr));
sc.close();
System.exit(0);
}
}
2. bubble sort
package Package1;
import java.util.Scanner;
import java.util.Arrays;
public class Bubblesort {
public static void main (String args[]){
Scanner sc = new Scanner (System.in);
int temp = 0;
int i = 0;
int j= 0;
int arr[] = new int[5];
// int n = arr[].length;
System.out.println("type 5 numbers");
for( i=0; i<5; i++){
arr[i]=sc.nextInt();
}
for (i=0; i<4;i++){
for (j=0;j<4-i;j++){
if(arr[j]>arr[j+1]){
temp = arr[j];
arr[j]= arr[j+1];
arr[j+1]= temp;
}
}
}
System.out.println("sorting completed: "+ Arrays.toString(arr));
sc.close();
System.exit(0);
}
}
오늘 알게된거: for 문에서 쓰이는 것들은 (I, j등) 전역변수말고 지역변수로 만들기 (for문에서 define)
array는 객체이므로 출력할때는 string 으로 형변환해줘야 한다 (Arrays.toString 이용하거나 for 문으로 element에 접근해야 함. 후자는 이해가 잘 안된다.
for (int element : arr) {
System.out.print(element); }
이렇게 쓰라는데 한번도 못 본 문법이고 검색도 특수기호는 안되니까 안 나오고;; 아는 분 계시면 댓글로 설명좀 해주세요
'⋆⁺공부 ⋆⁺' 카테고리의 다른 글
hackerrank- diagonal difference 자바(java) (0) | 2020.07.26 |
---|---|
quick sort 정리 휴 (0) | 2020.04.18 |
댓글