[알고리즘 코딩캠프 1일차] 뮤터블, 얕은 복사, 문자열, 딕셔너리, 시간복잡도, 입력, 출력, 팁, 파이써닉 - 리스트 컴프리헨션, 패킹, 언패킹, enumerate, Counter
제가 재학 중인 대학교에서 열린 `파이썬 알고리즘 코딩캠프(25.02.03 ~ 25.02.14)` 수업을 듣고 정리한 글입니다.목차 : 뮤터블 vs 이뮤터블할당 vs 얕은 복사 vs 깊은 복사문자열딕셔너리시간복잡도입력출력팁파이써닉리스트 컴프리헨션패킹, 언패킹enumerateCounter주의사항mutable과 immutable의 차이더보기- 파이썬은 모든 게 객체- 3이 어디에 있고 걔를 가리키는 주소값이 있는 느낌- 리스트는 뮤터블이라 뭘 추가해도 똑같은 객체를 가리킴- 문자열은 이뮤터블이라 새로 객체 생성 후 포인터가 변경 → 원래 놈은 참조가 사라지니 가비지 콜렉터가 수거해갈 예정할당 vs 얕은 복사 vs 깊은 복사더보기#1 할당a = [1,2,3]b = ab[0] = 4print(b) # [4, 2..
[알고리즘] 안정 정렬 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..