Algorithm

[Programmers/Java] 문자열 내 마음대로 정렬하기

patrck_jjh 2025. 3. 25. 20:19

 

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/12915

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 


 

import java.util.*;

class Solution {
    public String[] solution(String[] strings, int n) {
        
        for (int i = 0; i < strings.length; i++) {
            System.out.println(strings[i]);
            strings[i] = strings[i].charAt(n) + strings[i];
        }
        
        Arrays.sort(strings);
        
        for (int i=0; i<strings.length; i++) {
            strings[i] = strings[i].substring(1);
        }
        
        return strings;
    }
}

 

 

 

  • n에 해당하는 문자를 단어의 앞쪽에 붙여준다
  • Arrays.sort()메서드 활용해 알파벳 순서대로 정렬해준다
  • 붙여줬던 0번 인덱스의 단어를 제외(substring()으로 1번 인덱스부터 시작)하여 저장한다

 

 

 

ex)

strings = ["abce", "abcd", "cdx"]

n=2 일 때

cabce, cabcd, xcdx로 변환하고 알파벳 순으로 정렬하면

cabcd, cabce, xcdx가 된다

0번 인덱스 문자를 지우면 abcd, abce, cdx가 된다