아하
생활

생활꿀팁

하얀고슴도치236
하얀고슴도치236

보통 컴퓨터언어에서 "큐" 와 "스택"의 차이점은 무엇인가요??

보통 컴퓨터언어에서 "큐" 와 "스택"의 차이점은 무엇인가요??

하나는 선입 선출이고, 하나는 선입 후출 인건가요??

이 경우 선입선출은 구현할 이유가 많이 있지만

선입 후출은 어느때 구현해야하나요??

55글자 더 채워주세요.
1개의 답변이 있어요!
  • 프알못
    프알못

    자료구조에서 큐와 스택은 둘 다 추상 자료형 중 하나입니다.

    차이점은 이해하고 계신 것 같고, 스택의 예시라면 브라우저의 뒤로가기 버튼이 있습니다.

    다른 페이지로 이동할 때마다 방문 기록라는 스택에 보고 있던 페이지의 주소를 넣고,
    뒤로가기 버튼을 누르면 방문 기록에서 하나씩 값을 빼서 이전 페이지로 넘어가는 식이죠.
    (여기서 방문 기록에서 뺀 값이 이전 페이지의 주소가 됩니다. 선입후출, 후입선출이니까요!)

    그 외에도 (변수가 따로 필요 없는 경우 제외) 재귀함수를 재귀 없는 반복문으로 바꾸거나
    DFS(그래프 깊이 우선 탐색) 등 알고리즘 문제를 풀 때, 괄호를 검사하거나 할 때 등에도 쓰고
    프로그램을 실행할 때도 함수를 호출할 때 지역변수 등이 스택에 쌓이는 식으로 동작합니다.