๐Ÿงฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด(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( )์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฐ์—ด์˜ ์š”์†Œ๋“ค์„ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ๋‹ค.