정렬 시리즈

ims·2021년 2월 27일
0

NEW 알고리즘

목록 보기
1/14
post-thumbnail

📌 선택정렬

🔥 무엇을 선택할 것인가?

💰최소값 최대값💰을 선택한다.

최소값 ( 오름차순 ) 기준으로 정렬해보자.

🔥 my code

public class SelectionSort {
    public static void main(String[] args) {
        int[] array = {4,21,5,66,11,1,3};

        int[] selection = selection(array);
        for (int i : selection) {
            System.out.println(i);
        }
    }

    private static int[] selection(int[] array) {

        int temp;

        int minIndex=0;

        for(int i=0;i< array.length;i++){
            int min=9999;
            for(int j=i+1;j< array.length;j++){
                if(array[j]<min){
                    min=array[j];
                    minIndex=j;
                }
            }
            if(array[i]>min){
                temp=array[i];
                array[i]=array[minIndex];
                array[minIndex]=temp;
            }
        }
        return array;
    }
}

🔥 other code

    private static int[] selection(int[] array) {
        int temp;

        for(int i=0;i< array.length;i++){
            int min=i;
            for(int j=i+1;j< array.length;j++){
                if(array[j]<array[min]){
                    min=j;
                }
            }
                temp=array[i];
                array[i]=array[min];
                array[min]=temp;
        }
        return array;
    }

📋 feedback

  • 변수 갯수

나는 min , minIndex 로 2개의 변수를 두었는데, 실제로는 min 하나만 두어도 됐다.

array[min] == min 이기 때문에.

📌 삽입정렬

https://www.daleseo.com/sort-insertion/

profile
티스토리로 이사했습니다! https://imsfromseoul.tistory.com/ + https://camel-man-ims.tistory.com/

0개의 댓글