PHP与数据结构之栈的顺序存储
2017-04-14 22:54
106 查看
<?php /* * use php write stack * 栈的顺序存储结构 * Stack类为栈类 */ class Stack{ //$next 指向栈顶 private $top; //$length 记录栈的长度 private static $length; //$data 存储位置 private $data; //max 最大容量 const MAX=10; //初始化栈 public function __construct() { $this->top=-1; self::$length=0; $this->data=array(); } /* * pushStack($insert) * insert 插入的元素 * 入栈操作 判断栈是否已满 * if true 输出提示语 * else 进行入栈操作 */ public function pushStack($insert) { if($this->top==self::MAX-1) { echo "栈已满"; //echo self::MAX; } else { //栈顶“指针”加1 $this->top++; //给$data赋值 $this->data[$this->top]=$insert; //长度加一 self::$length++; echo "已入栈"; } } /* * popStack()出栈及返回栈顶元素 */ public function popStack() { if($this->top==-1) { echo "栈以空"; }else { $result=$this->data[$this->top]; $this->top--; self::$length--; //返回栈顶元素 echo "以出栈"; return $result; } } //out()输出栈内元素 public function out() { for ($i=0;$i<=$this->top;$i++) { echo $this->data[$i]; } } } /* * * $data=new Stack(); * $data->pushStack(1); * $data->pushStack(2); * $data->pushStack(3); * $data->out(); * $data->popStack(); * $data->popStack(); * $data->out(); * * 栈顺序存储的另外一种方式 * array_push(); * array_pop(); * * */
相关文章推荐
- PHP数据结构——二分查找与顺序查找
- PHP实现线性表的顺序存储实现
- 数据结构 串(顺序存储)的基本操作
- 数据结构之队列的顺序存储
- javascript实现数据结构:串--定长顺序存储表示以及kmp算法实现
- 数据结构例子-栈的顺序存储(利用数组)
- 数据结构--数组和广义表--数组的顺序存储表示和实现
- 数据结构-队列-顺序存储完整可执行代码
- (C语言)串定长顺序存储实现(数据结构十二)
- 数据结构--串--定长顺序存储表示
- php线性表顺序存储实现代码(增删查改)
- 顺序存储-数据结构-java实现
- 数据结构存储的顺序和链式对比
- 【数据结构】线性表顺序存储_List
- 跟我学数据结构--线性表的顺序存储
- 数据结构——串的顺序存储
- 数据结构:线性表(顺序存储)顺序栈类(实现创建,输出,入栈出栈,读栈顶元素功能)
- php实现数据结构线性表(顺序和链式)
- 数据结构:线性表的顺序存储--Java实现
- C语言数据结构-3.栈的顺序及链式存储结构