본문 바로가기

Algorithm/Programers - Java

[프로그래머스]문자열 내림차순으로 배치하기

 

Level. 1

 

문제

 

풀이

import java.util.*;
class Solution {
    public String solution(String s) {
        String answer = "";
        char[] arr = s.toCharArray();
        Arrays.sort(arr);
        for(int i=0; i<arr.length; i++){
            answer = arr[i] + answer ;
        }
        return answer;
    }
}

 

해결방법

  1. str.toCharArray() 를 사용해 문자열 배열을 생성한다.
  2. Arrays.sort()를 이용해 오름차 정렬한다.
  3. 반복문을 돌며 내림차순으로 정렬된 문자열을 만든다, 

 

 

 


다른 사람 풀이

import java.util.Arrays;

public class ReverseStr {
    public String reverseStr(String str){
        char[] sol = str.toCharArray();
    Arrays.sort(sol);
    return new StringBuilder(new String(sol)).reverse().toString();
    }

    // 아래는 테스트로 출력해 보기 위한 코드입니다.
    public static void main(String[] args) {
        ReverseStr rs = new ReverseStr();
        System.out.println( rs.reverseStr("Zbcdefg") );
    }
}

 

StringBuilder에 있는 reverse()메서드를 사용하면 문자열을 역순으로 뒤집을 수 있다. 

 

StringBuilder().reserve().toString()

// reverse
StringBuffer sb = new StringBuffer(str);
String reversedStr = sb.reverse().toString();