ALGORITM/JAVA
[Programmers 프로그래머스] 12915 문자열 내 마음대로 정렬하기
KUNDUZ
2021. 1. 7. 10:44
반응형
programmers.co.kr/learn/courses/30/lessons/12915
코딩테스트 연습 - 문자열 내 마음대로 정렬하기
문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1
programmers.co.kr
stream을 이용해서 풀이를 했다.
stream에 있는 sorted를 이용하였고, 그 안에 람다식을 이용을 해서 두 값을 비교해 준다. 그리고 인덱스 n 번째의 값을 비교를 해주고, 만약에 n번째 값이 같으면 오름차순으로 배열되도록 했다.
import java.util.Arrays;
class Solution {
public String[] solution(String[] strings, int n) {
Object[] temp = Arrays.stream(strings).sorted((s1, s2) -> {
if (s1.charAt(n) == s2.charAt(n)) {
return s1.compareTo(s2);
} else {
return s1.charAt(n) - s2.charAt(n);
}
}).toArray();
String[] answer=new String[temp.length];
for (int i = 0; i < temp.length; i++) {
answer[i]=(String) temp[i];
}
return answer;
}
}
반응형