3. 자료구조

3.1. 자료구조

3.1.1. 자료구조의 중요성

  • 자료구조(data structure)
    • 데이터의 특징을 고려하여 메모리에 효율적으로 저장 및 반환하는 방법으로 데이터를 관리하는 방식


  • 자료구조의 중요성
    • 데이터 저장과 검색 효율화 : (예) 빠른 검색이 필요한 경우 딕셔너리 사용
    • 연산 속도 최적화 : (예) 중복을 제거하는 경우 리스트보다 세트가 효율적임
    • 메모리 사용 절약 : (예) 불변형 객체를 다룰 때는 리스트 대신 튜플 사용
    • 코드 가독성 및 유지보수성 향상


3.1.2. Python 자료구조

  • Python은 리스트(list), 튜플(tuple), 세트(set), 딕셔너리(dictionary)의 4개 대표적인 자료구조를 제공함
자료구조 설명
리스트(list) 여러 개의 값을 저장할 수 있는 순차적인 자료구조
튜플(tuple) 리스트와 같지만 데이터의 변경을 허용하지 않는 자료구조
세트(set) 데이터의 중복을 허용하지 않고, 수학의 집합 연산을 지원하는 자료구조
딕셔너리(dictionary) 키(key)와 값(value)의 형태로 데이터를 저장하는 자료구조


  • 자료구조 비교
자료구조 순서 유지 변경 가능 중복 허용 특징
리스트(list) 가장 기본적인 자료구조, 인덱스로 접근
튜플(tuple) × 리스트와 유사하지만 불변형(immutable)
세트(set) × × 중복 제거, 수학적 집합 연산 가능
딕셔너리(dictionary) 키-값(key-value) 형태로 저장