본문 바로가기
Python

[Python] 파이썬 자료구조 종류

by 박사과정 모닝 2023. 10. 29.
반응형

자료구조의 개념

  • 자료구조(data structure): 데이터의 특징을 고려하여 데이터를 저장하는 방법. 특징이 있는 정보를 메모리에 효율적으로 저장 및 반환하는 방법으로써, 데이터를 관리하는 방식.
  • 예를 들어, 전화번호부를 만든다고 할 때 전화번호와 전화번호의 주인 이름을 묶어서 저장하는 것이 효율적입니다. 그리고 어떤 숫자의 나열을 순서대로 저장했다가 저장된 순서대로 불러와야 할 때도 있고, 혹은 저장한 순서의 반대로 불러와야 할 때도 있습니다. 이렇게 데이터를 어떤 방식으로 저장하고 처리하는 것이 적절한 것인지를 고려하여 적절한 자료구조를 선택해야 효과적인 프로그래밍이 가능합니다.

 

자료구조의 종류

자료구조의 종류만 먼저 간단히 살펴보면, 아래와 같습니다.

자료구조 특징
리스트(list) 여러 개의 데이터를 한꺼번에 나열하여 저장할 수 있음. 변경 가능. 인덱스 존재
스택(stack) Last In First Out(LIFO), 나중에 들어온 값이 먼저 나감
큐(queue) First In First Out(FIFO), 먼저 들어온 값이 먼저 나감
튜플(tuple) 리스트와 같지만 데이터의 변경 불가능
세트(set) 데이터의 중복을 허용하지 않으며, 수학의 집합 연산을 지원함. 데이터의 인덱스가 없음
딕셔너리(dictionary) 키(key)와 값(value) 형태의 데이터를 저장. '값'은 중복이 허용되지만 '키'값은 다른 키 값과 중복되지 않음
collections 모듈 위의 여러 자료구조들을 효율적으로 사용할 수 있게 지원하는 파이썬 내장 모듈

 

반응형