A ship in harbor is safe, but that is not what ships are built for.

코테 준비/Baekjoon Algorithm

[Day05 - 1427번] 소트인사이드

플리피나리 2024. 2. 13. 22:37
반응형

 

 

슈도 코드를 작성하면 다음과 같다.

더보기

str(정렬할 수)

A(자릿수별로 구분해 저장할 배열)

for(str 길이만큼 반복){

   A 배열 저장 -> str.substring 사용

}

for(i:0 ~ str길이만큼 반복){

   for(j:i+1 ~ str 길이만큼 반복){

      현재 범위에서 max 값 찾기

   }

   현재 i의 값과 max 값 중 max 값이 더 크면 swap 수행

}

A 배열 출력

 

구현 코드는 다음과 같다.

import java.util.*;

public class P_1427 {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      String str = sc.next();
      int[] A = new int[str.length()];
      for (int i=0; i<str.length(); i++) {
         A[i] = Integer.parseInt(str.substring(i, i+1));
      }
      
      for (int i=0; i<str.length(); i++) {
         int max = i;
         for (int j=i+1; j<str.length(); j++) {
            if (A[j] > A[max]) {
               max = j;
            }
         }
         if (A[i] < A[max]) {
            int temp = A[i];
            A[i] = A[max];
            A[max] = temp;
         }
      }
      
      for (int i=0; i<str.length(); i++) {
         System.out.println(A[i]);
      }
   }
}
반응형

'코테 준비 > Baekjoon Algorithm' 카테고리의 다른 글

[Day05 - 1377번] 버블 소트  (0) 2024.02.13
[Day05 - 2750번] 수 정렬하기  (0) 2024.02.13
[Day05 - 이론] 버블 정렬 & 선택 정렬  (0) 2024.02.13
[이론] 트리  (1) 2023.12.30
[백준(BOJ)] 10828번 C++ 풀이  (0) 2022.02.27