새소식

코딩테스트

[코드트리 조별과제] 선택 정렬 구현

  • -

https://www.codetree.ai/missions/6/problems/implement-selection-sort?&utm_source=clipboard&utm_medium=text

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

문제

 

풀이과정

  1. 최솟값 인덱스를 선택한다.
  2. 최솟값 인덱스와 최솟값 인덱스 다음 인덱스의 값을 비교해서, 최솟값 인덱스를 가진 배열의 크기가 더 크다면,  최솟값 인덱스 다음 값을 최솟값 인덱스로 재지정한다.
  3. 이후 자리를 바꾸어준다. 

 

나의 풀이

import java.util.*;

public class Main {

    public static int size;
    public static int[] arr;

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        size = sc.nextInt();
        arr = new int[size];

        for(int i = 0; i < size; i++){
            arr[i] = sc.nextInt();
        }

        selectionSort();

        for(int i = 0; i < size ; i++){
            System.out.print(arr[i] + " ");
        }
    }

    public static void selectionSort(){
        for(int i = 0; i < size; i++){
            int minIndex = i; //최솟값 인덱스

            for(int j = i+1; j < size; j++){
                if(arr[minIndex] > arr[j]){
                    minIndex = j;
                }
            }

            int temp = arr[i];
            arr[i] = arr[minIndex];
            arr[minIndex] = temp;
        }
    }
}
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.