php 数据结构之链表队列
更新时间:2017年10月17日 14:18:24 作者:xingjigongsi
这篇文章主要介绍了php 数据结构之链表队列的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
php 链表队列
实例代码:
class Queue{
private $last;
private $first;
private $oldfirst;
private static $n=0;
public function __construct(){
$this->last = null;
$this->first = null;
$this->oldfirst = null;
}
public function push($item){
$this->oldfirst = $this->last;
$this->last = new Node();
$this->last->item = $item;
$this->last->next = null;
if(empty($this->first)){
$this->first = $this->last;
}else{
$this->oldfirst->next = $this->last;
}
self::$n++;
}
public function pop(){
if(self::$n<0){
return null;
}
$item = $this->first->item;
$this->first = $this->first->next;
self::$n--;
return $item;
}
}
class Node{
public $item;
public $next;
}
$Queue = new Queue();
$Queue->push("a");
$Queue->push("b");
$Queue->push("c");
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
php empty 函数判断结果为空但实际值却为非空的原因解析
这篇文章主要介绍了php empty 函数判断结果为空但实际值却为非空的原因解析,下面是脚本之家小编处理之后的调试记录,分享到脚本之家平台,感兴趣的朋友一起看看2018-05-05
php中用加号与用array_merge合并数组的区别深入分析
本篇文章是对php中用加号与用array_merge合并数组的区别进行了详细的分析介绍,需要的朋友参考下2013-06-06


最新评论