모르겠다...!!
저번에 Long 타입의 숫자를 역순으로 배치해서 배열로 리턴하라는 건 된다.
근데 배열이 아닌 정수를 어떻게 정렬하지??
컬렉션으로 만들어서 정렬한다 쳐도 그걸 어떻게 다시 정수로 리턴하지?
컬렉션이 아닌 Long 이나 Int 를 어떻게 정렬하지?
다른 사람 풀이
class Solution {
fun solution(n: Long): Long = String(n.toString().toCharArray().sortedArrayDescending()).toLong()
}
Long -> String -> CharArray -> 정렬 -> String -> Long
toCharArray()
: 문자열이 개별적인 Char 요소로 분리되어 배열로 만들어짐
sortedArrayDescending()
: 배열 안 요소들을 내림차순으로 정렬
배열 정렬
1. 원본 Array 정렬
sort()
sortDescending()
2. 새로운 Array 반환
sortedArray()
sortedArrayDescending()
3. 정렬된 List를 반환
sorted()
sortedDescending()
다른 사람 풀이 2
class Solution {
fun solution(n: Long): Long {
val chars = n.toString().toCharArray()
chars.sortDescending()
return chars.joinToString("").toLong()
}
}
joinToString()
: array 또는 list 의 원소들을 합쳐서 string 으로 반환
'코딩테스트' 카테고리의 다른 글
프로그래머스 | 두 정수 사이의 합 (0) | 2023.12.21 |
---|---|
프로그래머스 하샤드 수 (0) | 2023.12.20 |
프로그래머스 정수 제곱근 판별 (0) | 2023.12.18 |
프로그래머스 자연수 뒤집어 배열로 만들기 (1) | 2023.12.15 |
프로그래머스 x만큼 간격이 n개의 숫자 (0) | 2023.12.14 |