๐งฉ ํ๋ก๊ทธ๋๋จธ์ค/์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)
ํ๋ก๊ทธ๋๋จธ์ค_๋ฌธ์์ด ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ
carrot0911
2024. 11. 21. 11:21
๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12917
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
๋ฌธ์์ด s์ ๋ํ๋๋ ๋ฌธ์๋ฅผ ํฐ ๊ฒ๋ถํฐ ์์ ์์ผ๋ก ์ ๋ ฌํด ์๋ก์ด ๋ฌธ์์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
s๋ ์๋ฌธ ๋์๋ฌธ์๋ก๋ง ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ๋๋ฌธ์๋ ์๋ฌธ์๋ณด๋ค ์์ ๊ฒ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค.
์ ํ ์ฌํญ
- s๋ ๊ธธ์ด 1 ์ด์์ธ ๋ฌธ์์ด์ ๋๋ค.
์ ์ถ๋ ฅ ์
s | return |
"Zbcdefg" | "gfedcbZ" |
๋ด๊ฐ ์์ฑํ ์ฝ๋
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
String[] str = s.split("");
Arrays.sort(str, Collections.reverseOrder());
for (String a : str) {
answer += a;
}
return answer;
}
}
์ฝ๋ ์ค๋ช
- String[ ] str = s.split("") : ๋ฌธ์์ด s๋ฅผ ๋น ๋ฌธ์์ด ""์ ๊ธฐ์ค์ผ๋ก ์๋ผ์, ๊ฐ ๋ฌธ์๋ฅผ ์์๋ก ๊ฐ์ง๋ ๋ฌธ์์ด ๋ฐฐ์ด str๋ก ๋ณํํ๋ค.
- Arrays.sort(str, Collections.reverseOrder( )
- Arrays.sort( ) ๋ฉ์๋๋ฅผ ์ด์ฉํด์ ๋ฐฐ์ด str์ ์ ๋ ฌํ๋ค.
- Collections.reverseOrder( ) ๋ฅผ ํตํด ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ๋๋๋ก ํ๋ค.
- for (String a : str) { } : for๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด str์ ๊ฐ ์์๋ฅผ ๊ฐ์ ธ์จ๋ค.
- answer += a : ๋ณ์ answer์ ๊ฐ ์์ a์ ๊ฐ์ ์์ฐจ์ ์ผ๋ก ์ถ๊ฐํด์ ์๋ก์ด ๋ฌธ์์ด์ ๋ง๋ ๋ค.
Split( )
- ๋ฌธ์์ด์ ํน์ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋๋์ด ๋ฐฐ์ด๋ก ๋ฐํํ๋ ๋ฉ์๋์ด๋ค.
- Ex) "hello".split("") : ๊ฐ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋๋์ด ["h", "e", "l", "l", "o"]์ ๊ฐ์ ๋ฐฐ์ด์ ๋ฐํํ๋ค.
Collections.reverseOrder( )
- ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๋น๊ต์๋ฅผ ๋ฐํํ๋ ๋ฉ์๋์ด๋ค.
- Array.sorts( )์ ํจ๊ป ์ฌ์ฉํ๋ฉด ๋ฐฐ์ด์ ์์๋ค์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ ์ ์๋ค.