일단 정렬이니까 sort()
에서 파생된 함수 중에 하나를 사용해야 할 것 같다. 먼저 입력받은 strings
를 오름차순으로 정렬하고 n
인 인덱스를 이용해서 정렬하면 될 것 같은데 더 좋은 방법이 있을 수 도 있으니 구글에서 좀 찾아보자.
source : https://codechacha.com/ko/kotlin-sorting-list/
sortWith()
와sortedWith()
의 차이를 먼저 알아보자.
sortWith()
는 입력받은 컬렉션 자체를 정렬하는 함수이고,
sortedWith()
는 입력받은 컬렉션을 정렬하여 새로운 리스트로 리턴해주는 함수이다.
즉, 리턴이 있고 없고의 차이인듯 하다.
레고레고
정렬을 두번하는 것 보다 compareBy()
를 사용하여 다중 조건으로 람다식을 이용하여 한번에 원하는 정렬을 얻을 수 있을 것 같다.
source : https://bcp0109.tistory.com/298
공부했으니 코드를 다시 짜보자!
레고레고
효율성이나 길이가 크게 달라보이지는 않지만 조건을 한번에 처리한다는 메리트가 있는 것 같다.
테스트도 해보자.
통과~~