-
Level1) 문자열 내 마음대로 정렬하기PS/programmers 2020. 9. 8. 16:15
import java.util.Arrays; import java.util.Comparator; class Solution { public String[] solution(String[] strings, int n) { Arrays.sort(strings, new Comparator<String>() { @Override public int compare(String o1, String o2) { if (o1.charAt(n) == o2.charAt(n)) { return o1.compareTo(o2); } else { return o1.charAt(n) - o2.charAt(n); } } }); return strings; } }
- 성공
- 저번에 Comparator 쓰는 문제를 풀어봤더니 문제읽고 이거 써야겠다는 생각이 듬
- 처음에 Arrays.sort 생각 못하고 괜히 Collections.sort로 썻다가 Arrays.sort로 수정
1) Arrays.sort에 new Comparator 사용
2) charAt(n) 값을 비교해서 같으면 다시 compareTo로 정렬
3) 만약에 다르면 o1.charAt(n) - o2.charAt(n) 을 리턴
3-1) 양수가 나오면 자리 바꾸고 , 음수 나오면 그대로
'PS > programmers' 카테고리의 다른 글
Level1) 문자열 내림차순으로 배치하기 (0) 2020.09.08 Level1) 문자열 내 p와 y의 개수 (0) 2020.09.08 Level1) 두 정수 사이의 합 (0) 2020.09.08 Level1) 나누어 떨어지는 숫자 배열 (0) 2020.09.08 Level1) 같은 숫자는 싫어 (0) 2020.09.08