코딩테스트

프로그래머스 문자열 내 마음대로 정렬하기

yolang 2024. 7. 24. 20:17
728x90

 

 

🔗 문자열 내 마음대로 정렬하기

 

📌오늘의 학습 키워드

  • 오늘도 간단했다. 뭐지? 저번에는 난이도가 좀 있었는데 첫째 주라 편안하게 가는건가

✨공부한 내용 본인의 언어로 정리하기

  • sort 와 sorted를 한번 정리해 보겠다. 
  • sort 와 sorted 모두 정렬하는 함수인데 약간 그 쓰임이 다르다. 
    • sort
      • list.sort(key=None, reverse=False) 형식으로 사용
      • 오직 list만 사용가능
      • 아무것도 return 하지 않음, list 그 자체를 Sort 함
    • sorted
      • sorted(iterable, key=None, reverse=False) 형식으로 사용
      • iterable이 가능하다면 가 가능 (list, tuples, dictionaries 등등)
      • 정렬된 list를 반환함, 즉 new_list = sorted(raw_list) 이런식으로 받아서 써야한다.

📚오늘의 회고

  • 어떤 문제가 있었고, 나는 어떤 시도를 했는지
    • sorted로 해결하려고 했는데 자꾸 테스트에서 틀렸다. 알고 보니 "인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다." 이 조건이 문제였다.
  • 어떻게 해결했는지
    • 문제에 맞게 sort 하기 전에 한번 sort 해줬다. 
  • 무엇을 새롭게 알았는지
    • sort와 sorted 가 적용되는 대상의 차이
  • 내일 학습할 것은 무엇인지
    • 오늘 완전탐색 공부하다가 말았는데 또 해야지~

[🤓문제 해결 코드]

def solution(strings, n):
    strings.sort()
    return sorted(strings, key=lambda x: x[n])
728x90