https://school.programmers.co.kr/learn/courses/30/lessons/12915
1๋ฒ ํ์ด
import java.util.*;
class Solution {
public String[] solution(String[] strings, int n) {
String[] answer = new String[strings.length];
List<String> list = new ArrayList<>();
for(int i=0; i<strings.length; i++){
list.add(strings[i].charAt(n)+strings[i]);
}
Collections.sort(list);
for(int i=0; i<list.size(); i++){
answer[i] = list.get(i).substring(1, list.get(i).length());
}
return answer;
}
}
์ฒ์์ ์ด๋ ๊ฒ ํ์์๋๋ฐ..๊ทธ๋ฌ๋๊น ์ด์ฐจํผ ๋น๊ต๋ฌธ์๊ฐ ๊ฐ์ ๊ฒฝ์ฐ ์ ์ฒด ๋ฌธ์์ด์ ๊ธฐ์ค์ผ๋ก ๋น๊ตํ๋๊น,
๋น๊ต๋ฌธ์๋ฅผ ๋งจ ์์ ๋๊ณ ๋ฌธ์์ด์ ๊ทธ๋๋ก ํฉ์ณ์ฃผ๊ณ ์ ๋ ฌ(sort)๋ฅผ ํ๊ณ
์ ๋ ฌ๋ ๋ฆฌ์คํธ์์ ๋งจ ์ฒ์ ๋ฌธ์๋ง ๋นผ๊ณ ๋ฐํํด์ฃผ๋๊ฒ์ด๋ค.
๊ทผ๋ฐ ์ด๋ ๊ฒ ๋ง๊ณ compare๋ฅผ ์ฐ๋ ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด์๋ค.
2๋ฒ ํ์ด
import java.util.*;
class Solution {
public String[] solution(String[] strings, int n) {
Arrays.sort(strings, new Comparator<String>(){
@Override
public int compare(String s1, String s2){
if(s1.charAt(n) > s2.charAt(n)) return 1;
else if(s1.charAt(n) == s2.charAt(n)) return s1.compareTo(s2);
else if(s1.charAt(n) < s2.charAt(n)) return -1;
else return 0;
}
});
return strings;
}
}
์ค๊ฐ ์ฝ๋๋ฅผ ๋ณด๋ฉด
return 1 : ๋ ์์๋ฅผ ์๋ก ๋ฐ๊ฟ์ผ ํ๋ค๋๊ฒ์ ๋ํ๋ธ๋ค. ์ฆ, ์ฒซ๋ฒ์งธ ์์๊ฐ ๋๋ฒ์จฐ ์์๋ณด๋ค ํฐ ๊ฒฝ์ฐ์ ์ฌ์ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ ์์๊ฐ ์๋ก ๋ฐ๋์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋๋ค.
return -1 : ๋ ์์์ ์์๋ฅผ ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๊ฒ์ด๋ค. ์ฆ, ์ฒซ๋ฒ์งธ ์์๊ฐ ๋๋ฒ์งธ ์์๋ณด๋ค ์์ ๊ฒฝ์ฐ์ ์ฌ์ฉ๋๋ค. ์ด ๊ฒฝ์ฐ ๋ ์์์ ์์๊ฐ ์ด๋ฏธ ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ ฌ๋์ด ์๋ค๋ ์๋ฏธ์ด๋ค.
'๐ ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค & ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค][JAVA] Level 1 : ์ฑ๊ฒฉ ์ ํ ๊ฒ์ฌํ๊ธฐ (0) | 2024.03.12 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค][JAVA]Level 1 : ๋์ถฉ ๋ง๋ ์ํ (0) | 2024.01.20 |
[ํ๋ก๊ทธ๋๋จธ์ค][JAVA]Level 2 : N๊ฐ์ ์ต์๊ณต๋ฐฐ์ (0) | 2023.04.07 |
[ํ๋ก๊ทธ๋๋จธ์ค][JAVA]Level 2 : ๊ตฌ๋ช ๋ณดํธ (0) | 2023.04.05 |
[ํ๋ก๊ทธ๋๋จธ์ค][JAVA]Level 2 : ์์ด ๋๋ง์๊ธฐ (0) | 2023.04.04 |