배열을 왜써?
- 같은 종류의 데이터를 '효율적'으로! 관리하기 위해서
- 같은 종류의 데이터를 '순차적'으로! 저장하기 위해서
그렇다면 배열이 주는 장단점은?
- 장점
- 빠른 접근 가능
- 단점
- 추가/삭제가 쉽지 않음
대표적인 데이터 구조
큐 (Queue)
- 가장 먼저 넣은 데이터를 가장 먼저 뺀다!
- FIFO(First In First Out), LILO(Last In Last Out) 스택과 반대
알아둘 용어
- Enqueue 큐에 데이터를 넣는 것
- Dequeue 큐에서 데이터를 꺼내는 것
큐에서는 딱히 언급되는 장단점이 없다. 순차적이라는 것 정도..?
스택 (Stack)
- 가장 나중에 쌓은 데이터를 먼저 빼낸다!
- FILO(First In Last Out), LIFO(Last In First Out)
알아둘 용어
- push() : 데이터를 스택에 넣는 것
- pop() : 데이터를 스택에서 꺼내는 것
장단점
- 장점
-구조가 단순해 구현하기 쉽다, 데이터 저장/읽기가 빠르다
- 단점
-데이터 최대 갯수를 미리 정해야 한다.(파이썬의 경우 재귀함수는 1000번까지만 가능하다)
-저장공간의 낭비가 있다.