• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    해결됨

스택과 큐의 필요성

23.01.23 22:21 작성 조회수 553

1

스택은 FIFO 큐는 LIFO 구조인데 이 두개를 합친게 덱같네요. 이렇게되면 스택과 큐의 자료구조의 필요성이 잘 느껴지지 않습니다. 덱이 성능이 나쁘게 아니고 연결리스트 덕분에 삽입 제거가 O(1)의 성능이 나오는데 이렇게되면 굳이 스택과 큐를 써야하나싶은데 스택, 큐, 덱이 성능상의 차이점이 있을까요?

답변 1

답변을 작성해보세요.

1

성능의 차이는 없습니다.
덱으로 스택, 큐를 모두 사용할 수 있으므로 덱만 이용하셔도 됩니다.

다만 협업에서 덱을 스택으로 쓰신다면 스택을 이용할 때보다 가독성은 조금 더 안 좋아지겠죠?애초에 스택으로만 이용한다면 스택으로 선언했다면 동료가 스택이라고 충분히 인지할 테지만 힙이면 경우의 수를 조금 생각하면서 코드를 이해해야 할 테니깐요 ㅎㅎ

필요에 따라서 적절한 것을 선택하면 될 것 같습니다 😉

오 만약에 스택과 큐를 둘다 사용해야하는 상황이라면 따로 따로 구현할 필요없이 덱을 사용하지만 둘중 하나만 필요한 상황이라면 가독성과 직관적으로 하나를 사용하면되겠군요 ㅎㅎ 역시 일반화를해서 생각하면 안되겠군요 2번 3번 더 생각해서 적절하게 딱 맞는 자료구조를 써서하는게 팀웍적으로도 더 좋아지니깐요.

멋진 생각입니다! ㅎㅎ