리스트란? 여러 값을 순서대로 담는, 변경 가능한 자료형이다. 순서 : 넣은 순서가 유지되고, 각 자리에 인덱스가 붙는다.가변 : 만든 뒤에도 값을 바꾸거나 넣고 뺄 수 있다.이질 : 서로 다른 타입을 섞어 담을 수 있다. 이 세가지 성질이 튜플, 문자열, 집합과 리스트를 가르는 기준이다. 튜플은 순서는 있지만 불변이고, 집합은 가변이지만 순서가 없다.a = [1, 2, 3] # 대괄호 리터럴b = [] # 빈 리스트c = list("abc") # 다른 순회 가능 객체로부터 → ['a','b','c']d = [0] * 5 # 반복 → [0,0,0,0,0]e = [x**2 for x in range(5..
튜플이란?튜플은 한번 만들면 값을 바꿀 수 없는 (불변, immutable) 순서 있는 값들의 묶음이다. t = (1, 2, 3)t = 1, 2, 3 # 괄호는 사실 선택사항t = () # 빈 튜플t = (1,) # 요소 1개는 쉼표 필수! (1)은 그냥 정수 리스트와 비교하면 리스트는 안의 값을 수정, 추가, 삭제할 수 있지만 튜플은 한 번 만들면 그 값 그대로 고정된다.lst = [2,5] # 리스트 - 대괄호lst[0] = 100 # 가능. lst는 [100, 5]가 됨tup = (2,5) # 튜플 - 소괄호tup[0] = 100 # 에러! TypeError: 'tuple' object does not support item assignm..
문제- 메모이제이션(Memoization)을 사용한 하향식 DP로 피보나치 수를 계산합니다.- 이미 계산한 값을 저장하여 중복 계산을 방지합니다. 문제풀이def fibonacci_memo(n, memo=None): """ 메모이제이션을 사용한 피보나치 (하향식 DP) Args: n: 피보나치 인덱스 memo: 계산 결과를 저장할 딕셔너리 Returns: n번째 피보나치 수 """ if memo is None: memo = {} if n 동적 프로그래밍에 대한 개념은 여기에 정리하였다. 다이나믹 프로그래밍 (DP) 정리다이나믹 프로그래밍이란?복잡한 문제를 더 작은 하위 문제로 나누어 해결하는 알..