> 알고리즘 문제 풀이/프로그래머스
lv1-문자열 내 마음대로 정렬하기 (python, 파이썬)
bky373
2020. 10. 19. 22:51
- 1번: 내가 작성한 풀이
def solution(strings, n):
answer = sorted(strings, key=lambda x:x[n])
for x in range(len(answer)):
for y in range(x+1, len(answer)):
if answer[x][n] == answer[y][n]:
if answer[x] > answer[y]:
answer[x], answer[y] = answer[y], answer[x]
return answer
- 2번: 1번 성공 후 참고한 풀이
def solution2(strings, n):
return sorted([s for s in strings], key=lambda x: [x[n], x]])
- 3번: 1번 성공 후 참고한 풀이
def solution(strings, n):
return sorted(sorted(strings), key=lambda x: x[n])
- 체크!
- 정렬기준을 여러개로 할 때 sorted의 key에서 list 또는 tuple를 이용할 수 있다
- 또는, sorted를 여러 번 사용할 수 있다 (물론 주어진 조건과 맞는지 확인 필수!)