큐와 스택은 모두 데이터를 저장하는 데 사용되는 선형 데이터 구조입니다. 스택은 LIFO 원칙을 사용하여 요소를 삽입하고 삭제합니다. 대기열은 FIFO 원칙을 사용합니다. 이 튜토리얼에서는 큐를 사용하여 스택을 뒤집는 방법을 배웁니다. 역방향이란 스택의 마지막 요소가 첫 번째 요소가 되는 것을 의미합니다.
데이터 구조의 스택은 실제 스택에서 영감을 받았습니다. LIFO(후입선출) 논리를 사용합니다. 즉, 스택에 마지막으로 들어간 요소가 먼저 제거됩니다. 스택에서는 요소가 맨 위에서 삽입되고 맨 위에서만 제거할 수 있습니다. 스택에는 끝점이 하나만 있습니다.
실생활에서 신문을 쌓는 것은 더미의 예입니다. 더미에서 꺼낸 신문이 마지막으로 넣은 신문입니다.
push() − 위에서부터 스택 요소를 삽입합니다.
Syntax − stack_name.push(요소 유형)
pop() − 스택 맨 위에서 요소를 제거합니다.
Syntax − stack_name.pop()
size() − 스택의 크기를 반환합니다.
Syntax − stack_name.size()
top() − 스택의 최상위 요소에 대한 참조를 반환합니다.
Syntax − stack_name.top()
데이터 구조에서 큐의 개념은 실생활의 큐에서 유래합니다. 대기열의 요소는 백엔드에서 삽입되고 프런트엔드에서 제거됩니다. 대기열의 양쪽 끝은 열려 있으며 FIFO(선입선출) 원칙에 따라 작동합니다. 이 원칙은 먼저 삽입된 요소가 대기열에서 먼저 제거된다는 것을 의미합니다.
push() − 대기열의 백엔드에 요소를 삽입합니다.
Syntax − queue_name.push(데이터 유형)
pop() − 대기열 앞쪽에서 요소를 제거합니다.
Syntax − queue_name.pop()
front() − 대기열의 첫 번째 요소에 대한 참조를 가져옵니다.
Syntax − queue_name.front()
size() − 대기열의 크기를 반환합니다.
Syntax − queue_name.size()
먼저, 예를 통해 스택 반전이 무엇인지 알아보겠습니다.
으아아아Logic - 요소가 있는 스택과 빈 대기열을 사용합니다. 스택에서 요소를 하나씩 팝하고 모든 요소가 삽입될 때까지 대기열에 삽입합니다. 이제 대기열 요소가 제거되고 빈 스택에 다시 삽입됩니다. 마치다.
1단계: 스택에 요소를 삽입합니다.
2단계: 빈 대기열을 가져옵니다.
3단계: 스택 요소를 빈 큐에 하나씩 푸시합니다.
4단계: 이제 스택이 비어 있습니다.
5단계: 대기열에서 요소를 하나씩 팝하여 스택에 푸시합니다.
6단계: 스택이 반전됩니다.
아래 예시입니다.
으아아아큐를 사용하면 쉽게 스택을 되돌릴 수 있습니다. 스택 요소를 큐에 삽입한 다음 큐 요소를 다시 스택에 삽입합니다. 이 접근 방식을 쉽게 이해하고 구현할 수 있기를 바랍니다.
위 내용은 큐를 사용하여 스택 반전의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!