Home >Backend Development >PHP Tutorial >Example of stack data structure implemented in PHP [Push into stack, pop out of stack, traverse stack]_php skills
This article mainly introduces the stack data structure implemented by PHP, and analyzes php's definition of stack and push, pop, and For stack traversal and other related operation skills, friends in need can refer to this article. This article describes the stack data structure implemented by PHP with examples. Share it with everyone for your reference, the details are as follows: Using
php object-orientedideas, the properties of the stack include top, maximum storage number, and storage container (the 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 'stack is full...'; return false; } $this->stack[++$this->top] = $ele;// 此处必须是++i,先计算再使用 } // 出栈,返回出栈元素 public function pop(){ if ($this->top == -1){ echo 'stack is empty...'; return false; } $ele = $this->stack[$this->top]; unset($this->stack[$this->top--]);// 此处必须是i--,先使用再计算(注意出栈和入栈的区别) return $ele; } // 遍历栈 public function show(){ if ($this->top == -1){ echo 'stack is empty...'; return false; } for($i=$this->top; $i>-1; $i--){ echo $this->stack[$i].'<br/>'; } } } $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();
Run Result:
4 3 2 1 1
The above is all the content of this article, I hope it can be helpful to everyone! !
Related recommendations:
Example analysis of PHP single file and multiple file upload
Detailed explanation of examples of classes and objects in phpSolutions to poor quality thumbnails generated by phpThe above is the detailed content of Example of stack data structure implemented in PHP [Push into stack, pop out of stack, traverse stack]_php skills. For more information, please follow other related articles on the PHP Chinese website!