Home  >  Article  >  Backend Development  >  A comprehensive and detailed explanation of how PHP implements stack data structure examples

A comprehensive and detailed explanation of how PHP implements stack data structure examples

小云云
小云云Original
2017-12-13 09:58:161642browse

This article mainly introduces the stack data structure implemented by PHP, and analyzes the PHP definition stack and related operation skills such as stacking, popping, and traversing the stack in the form of examples. Friends who need it can refer to it. I hope it can help everyone.

Using PHP object-oriented thinking, the attributes of the stack include top, maximum storage number, and storage container (php array is used here).

The code is as follows: Several methods of pushing, popping, and traversing the stack are implemented:

<?php
class Stack{
  const MAXSIZE = 4;// 栈最大容量
  private $top = -1;
  private $stack = array();// 利用数组存储数据
  public function __construct(){
    $this->stack = array();
  }
  // 入栈
  public function push($ele){
    if ($this->top >= self::MAXSIZE-1){
      echo &#39;stack is full...&#39;;
      return false;
    }
    $this->stack[++$this->top] = $ele;// 此处必须是++i,先计算再使用
  }
  // 出栈,返回出栈元素
  public function pop(){
    if ($this->top == -1){
      echo &#39;stack is empty...&#39;;
      return false;
    }
    $ele = $this->stack[$this->top];
    unset($this->stack[$this->top--]);// 此处必须是i--,先使用再计算(注意出栈和入栈的区别)
    return $ele;
  }
  // 遍历栈
  public function show(){
    if ($this->top == -1){
      echo &#39;stack is empty...&#39;;
      return false;
    }
    for($i=$this->top; $i>-1; $i--){
      echo $this->stack[$i].&#39;<br/>&#39;;
    }
  }
}
$stack = new Stack;
$stack->push(1);
$stack->push(2);
$stack->push(3);
$stack->push(4);
//print_r($stack);
$stack->show();
$a = $stack->pop();
$a = $stack->pop();
$a = $stack->pop();
$stack->show();

Running results:

4
3
2
1
1
Related recommendations:
Code examples of how to implement stack data structure and bracket matching algorithm in php Detailed explanation

The code for using arrays to implement stack data structures in PHP

Plastic linear table push and pop example analysis_PHP tutorial

The above is the detailed content of A comprehensive and detailed explanation of how PHP implements stack data structure examples. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn