두 개의 스택을 사용하여 큐를 구현하는 방법

작가: Laura McKinney
창조 날짜: 4 4 월 2021
업데이트 날짜: 15 1 월 2025
Anonim
18 스택으로 큐 만들기
동영상: 18 스택으로 큐 만들기

콘텐츠

대기열은 "선착순"으로 데이터에 액세스 할 수있는 동적 데이터 구조입니다. 스택은 동적 데이터 구조로, "마지막에서 처음 사용하는"프로세스에서 데이터에 액세스 할 수 있습니다. 스택을 구현하면 입력 한 마지막 항목 만 사용할 수있게됩니다. 기본 데이터 인 사용자가 입력 한 첫 번째 항목에 액세스하려면 해당 데이터를 대기열로 처리해야합니다. 이렇게하려면 두 번째 힙을 구현해야합니다.


지침

두 개의 스택을 사용하여 큐를 구현하는 것은 간단합니다. (Ablestock.com/AbleStock.com/Getty Images)

    두 개의 스택이 한 행과 같습니다.

  1. 텍스트 편집기에서 사용할 프로그래밍 언어로 사용할 수있는 절차와 함수에 따라 스택을 구현하는 코드를 작성하십시오. 이 Stack_Entry 스택을 호출하십시오. 데이터를 Stack_Entry에 넣으십시오 (많은 프로그래밍 언어가 "push"명령을 사용하여 데이터를 추가합니다). 예를 들어 Stack_Entry에서 "push"명령을 실행하면 "A", "B"및 "C"순서로 데이터를 입력 할 수 있습니다. "A"는 처음으로 들어가서 스택 맨 아래에 있습니다. 이 첫 번째 항목에 액세스하려면 데이터를 대기열로 처리해야합니다.

  2. 사용할 프로그래밍 언어에서 사용 가능한 프로 시저 및 함수에 따라 두 번째 스택을 구현하는 코드를 작성하십시오. StackSafe라고 부르십시오 (많은 프로그래밍 언어는 "pop"명령을 사용하여 스택에서 데이터를 제거합니다).

  3. Stack_Insert 스택에서 각 항목을 제거하고 Sleep Stack에 배치하십시오. 일반적으로 Stack_Input 항목을 제거하고 StackAid에 배치합니다. 그런 다음 Stack_Input이 비어 있는지 확인합니다. 비어 있지 않으면 Stack_Input에서 다음 항목을 제거하고 수면 스택에 놓습니다. Stack_Input이 비어있을 때까지 반복하십시오. 이 예에서는 Stack_Input에서 "C"를 제거하고 Stack_Aid에 넣습니다. InputPilot이 비어 있는지 확인하십시오. Stack_Input에서 "B"를 제거하고 Stack_Aid로 설정하십시오. InputPilot이 비어 있는지 확인하십시오. Stack_Input에서 "A"를 제거하고 Stack_Aid로 설정하십시오. InputPilot이 비어 있는지 확인하십시오.


  4. Stack_Path 스택이 비어 있으면 Stack_Input (이 예제에서 "A")에 있던 항목이 이제 Stack_Aside의 맨 위에 있습니다. SleepSeat 항목을 제거하면 스택이 대기열로 전환됩니다. 스택의 첫 번째 항목이 이제 꺼내 져야하는 첫 번째 항목입니다 (선입 선출, FIFO 선입 선출).

어떻게

  • 대부분의 프로그래밍 언어는 마치 벡터의 데이터를 큐 또는 스택처럼 취급하는 기능을 제공합니다. 즉, 데이터를 입력하는 끝과 관계없이 벡터의 마지막 위치와 첫 번째 위치 모두에 액세스 할 수 있습니다. 데이터가 벡터에 있으면 큐 또는 스택으로 액세스하는 것에 대해 걱정할 필요가 없습니다. 그러나 데이터가 동적 힙에 있고 대기열로 처리하려는 경우 두 번째 스택을 구현해야합니다.

필요한 것

  • 텍스트 편집기
  • 일부 프로그래밍 언어 용 컴파일러 또는 인터프리터

최근에는 웨이크 보딩이 점점 인기를 얻고 있으며, 이에 따라 장비 개발도 증가했습니다. 현대 보드는 일반적으로 유리 섬유 또는 탄소 섬유로 싸인 폼으로 만들어 지지만 일반적으로 발견되는 재료로 만들 수 있습니다. 보드를 만들면 선호도에 따라 직접 커스터마이징 할 수 있으므로 적은 비용으로 물에서 더 나은 성과를 낼 수 있습니다.나무 판에 원하는 윤곽선을 그...

농업 쟁기의 종류

Christy White

1 월 2025

농업은 수세기 동안 존재 해 왔습니다. 농업에서 가장 기본적인 도구 중 하나는 농부가 자신의 밭을 갈기 위해 사용하는 도구 인 쟁기입니다. 밭을 심을 준비를하기 위해 쟁기가 이루어집니다. 쟁기 없이는 심기가없고 쟁기 없이는 쟁기질이 없습니다.그렇기 때문에 쟁기는 농부에게 중요한 도구입니다. 수세기에 걸쳐 쟁기는 극적으로 발전했으며 현재 현대 농부가 사용할 ...

신선한 출판물