코딩테스트 연습 - 정수 내림차순으로 배치하기
정수 n의 각 자릿수를 내림차순으로 정렬하라.
각 자릿수의 크기비교가 필요하기 때문에 정수를 문자열로 바꿔주고 sorted() 함수를 통해 내림차순으로 정렬된 리스트를 얻어냈다. 그 후 join() 함수를 통해 리스트를 문자열로 바꿔주었다.
def solution(n):
_str = str(n)
r_list = sorted(_str, reverse=True)
r_str = ''.join(r_list)
return int(r_str)
def solution(n):
ls = list(str(n))
ls.sort(reverse = True)
return int("".join(ls))
: list => string 변환된 문자열 반환
a_list = ['8','7','3','2', '1', '1']
a_str = ''.join(a_list) #873211
sort() : 리스트 자체를 정렬. 반환값 없음.
sorted(리스트) : 정렬된 새로운 리스트 반환.
# sort()
a_list = ['8','2', '3', '1']
a_list.sort() # ['1', '2', '3', '8']
# sorted(리스트)
a_list = ['8','2', '3', '1']
new_list = sorted(a_list) # ['1', '2', '3', '8']
print(a_list) # ['8', '2', '3', '1']
new_list = sorted(a_list, reverse=True) # ['8', '3', '2', '1']
# key=lambda 옵션을 이용해 value 값을 기준으로 정렬할 수 있다.
a_dic = {'b': 400, 'e': 300, 'a': 200, 'd': 100, 'c': 500}
new_dic = sorted(a_dic.items(), key=lambda x: x[1], reverse=True)
print(new_dic) # [('c':500), ('b':400), ('e':300), ('a':200), ('d':100)]