[자료구조] 배열, 큐, 스택

guns.velog·2020년 4월 15일
0
post-custom-banner

배열을 왜써?

  • 같은 종류의 데이터를 '효율적'으로! 관리하기 위해서
  • 같은 종류의 데이터를 '순차적'으로! 저장하기 위해서

그렇다면 배열이 주는 장단점은?

  • 장점
    - 빠른 접근 가능
  • 단점
    - 추가/삭제가 쉽지 않음

대표적인 데이터 구조

큐 (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번까지만 가능하다)
    -저장공간의 낭비가 있다.
post-custom-banner

0개의 댓글