[알고리즘] 안정 정렬 vs 불안정 정렬 (Stable Sort vs Unstable Sort).
https://cuffyluv.tistory.com/123 이전에 작성한 글 참고. data = [(1, 3, 5, 7, 9), (1, 3, 2, 4, 8), (2, 2, 3, 6, 7), (3, 1, 6, 8, 10)]result = sorted(data, key=lambda x: (x[1], x[0]))print(result) # [(3, 1, 6, 8, 10), (2, 2, 3, 6, 7), (1, 3, 5, 7, 9), (1, 3, 2, 4, 8)]위와 같은 파이썬 코드가 있다.튜플을 요소로 가지는 리스트에서, 각 요소를 정렬할 건데,첫 번째 정렬 기준을 튜플의 두 번째 요소,그리고 위의 첫 번째 정렬기준이 일치할 경우, 튜플의 첫 번째 요소를 정렬 기준으로 하여서 정렬하는 코드이다. 그러면, 튜..
[Python] sorted() 함수와 list.sort() 메서드 설명 및 비교.
1. sorted() 함수- `iterable 객체(리스트, 튜플, 문자열 등)`를 정렬하여 `정렬된 새로운 리스트`를 반환하는 내장 함수.- 쉽게 말해, `iterable`를 받아서 `list`를 반환함.문법result = sorted(iterable, key=None, reverse=False)매개변수1. iterable (필수)- 정렬 대상이 되는 iterable 객체.- ex. `str, list, tuple, dict의 key 등`2. key (선택, 기본값 : None)- 정렬 기준을 지정하는 함수.- 각 요소에 대해 `key`로 전달된 함수가 호출되며, 반환된 값이 정렬 기준이 됨.- 기본값은 `None`로 이 경우 요소 자체를 기준으로 정렬.3. reverse (선택, 기본값 : False..
[Python/LeetCode] 49. Group Anagrams
https://leetcode.com/problems/group-anagrams/ 입력 : 소문자 영어 단어들로 이루어진 문자열 배열(리스트) `strs`출력 : `strs` 내의 groups of anagram으로 이루어진 2차원 리스트Input: strs = ["eat","tea","tan","ate","nat","bat"]Output: [["bat"],["nat","tan"],["ate","eat","tea"]]Input: strs = [""]Output: [[""]]Input: strs = ["a"]Output: [["a"]]직관 및 접근당장 드는 생각은,일단 strs를 순회를 돌거임 for문으로. 대신 첫 단어는 미리 어떤 리스트에 할당시켜둠.그리고 그 다음 단어부터, 이게 이미 존재하는 리스트..