부스트코스 강의 인공지능(AI) 기초 다지기 중 'Python Data Structure'를 정리한 내용이다.
나중에 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조
Last In First Out (LIFO)
Data의 입력을 Push, 출력을 POP이라고 함
리스트를 이용하여 스택 구조 구현 가능
먼저 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조
First In First Out (FIFO)
Stack과 반대되는 개념
리스트를 이용하여 큐 구조 활용
값의 변경이 불가능한 리스트
[]가 아닌 ()를 사용
프로그램을 작동하는 동안 변경되지 않은 데이터를 저장할 때 사용, 사용자의 실수에 의한 에러를 사전에 방지
값이 하나인 tuple은 반드시 , 를 붙여야 함
t = (1, )
값을 순서없이 저장, 중복을 허용하지 않는 자료형
set 객체 선언을 이용하여 생성
교집합, 합집합, 차집합 등 다양한 집합연산 가능
데이터를 저장할 때 구분 지을 수 있는 값을 함께 저장
구분을 위한 데이터 고유값을 Identifier 혹은 Key라고 함
Key값을 활용하여 데이터값(Value)를 관리함
{Key1: Value1, Key2: Value2, ...} 형태
Stack과 Queue를 지원하는 모듈
List에 비해 효율적인 자료 저장 방식 지원, 효율적 메모리 구조로 처리 속도 향상
roate, reverse등 Linked List의 특성을 지원하고, 기존 List 형태의 함수를 모두 지원함
Sequence type의 data element들의 갯수를 dict 형태로 반환
Set의 연산들을 지원함
Tuple 형태로 Data 구조체를 저장하는 방법
저장되는 data의 variable을 사전에 지정해서 저장함