코린이의 소소한 공부노트

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

코딩테스트 풀이/JAVA

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

무지맘 2022. 11. 25. 23:50

1. Input

1) 문자열 s

 

2. Output

1) s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로 만든 문자열

 

3. Constraint

1) s은 길이 1 이상인 문자열

2) s는 영문 대소문자로만 구성되어 있다.

3) 대문자는 소문자보다 작은 것으로 간주한다.

 

4. Example

Input: s="Zbcdefg" -> Output: "gfedcbZ"

 

5. Code

1) 첫 코드(2022/??)

import java.util.Arrays;

String answer = "";
int[] n = new int[s.length()];
for(int i=0 ; i<n.length ; i++)
    n[i] = s.charAt(i);
Arrays.sort(n);
for(int i=n.length-1 ; i>=0 ; i--)
    answer += (char)n[i] + "";
return answer;

2) 다시 풀어본 코드(2022/11/25)

import java.util.Arrays;

char[] c = s.toCharArray();
Arrays.sort(c);
for(int i=0 ; i<c.length/2 ; i++){
    char tmp = c[i];
    c[i] = c[c.length-1-i];
    c[c.length-1-i] = tmp;
}            
return String.valueOf(c);

  - 1번 코드는 1xms였는데, 2번 코드는 0.xms였다.