18. 튜플(Tuple)과 세트(Set)
튜플(Tuple)이란? 튜플은 리스트와 유사하지만, 튜플의 내용은 변경할 수 없다. 그런데 편한 리스트 대신 왜 불편한 튜플을 만든 이유는 무엇일까? 1. 리스트는 실수로 요소가 추가, 삭제, 변경될 수 있는 반면, 튜플은 수정이 불가하여 변경으로 인한 실수가 없다. 2. 튜플은 리스트 보다 접근 속도가 빠르다. 3. 튜플은 시퀀스의 일종이다. 시퀀스의 일종이기에 인덱싱, 슬라이싱, 덧셈연산, 곱센 연산이 지원된다. 튜플의 표현식 tuple_ = (1,2,3) tuple_ex = (1,) 리스트는 []를 쓰지만 튜플은 ()을 쓴다는 점에서 큰 차이를 보인다. 또한 값이 하나일 때, 튜플은 (1,)와 같이 쉼표를 반드시 붙여줘야 한다. 튜플의 값을 수정하려 한다면 다음과 같은 오류가 발생한다. TypeEr..
2022. 2. 6.
17. 스택(Stack)과 큐(Queue)
자료구조는 특징이 있는 정보를 메모리에 효율적으로 저장 및 반환하는 메모리 구조를 가지는 저장 공간(체계)으로, 데이터를 관리하는 방식이다. 예로, 이름이 성만 기억난다고 했을 때, 그 사람을 전화번호부에서 찾는다고 가정하자. 전화번호부에서 데이터를 사람이 빠르게 찾으려면(=효율적으로 찾으려면) ㄱ,ㄴ,ㄷ 순으로 배열이 되어 있다면 무작위로 저장되어 있는 것보다 빠르게 접근이 가능해진다. 이러한 자료구조는 리스트, 스택, 큐, 튜플, 세트, 딕셔너리, collections 모듈 등이 있다. 그중 스택에 대해 알아볼 것이다. 스택의 정의 스택은 마지막에 들어간 데이터가 가장 먼저 나오는 형태로 데이터의 저장 공간(체계)을 구현한다. 스택에서 데이터를 저장하는 것을 푸시(push), 데이터를 추출하는 것을 ..
2022. 2. 6.