這篇文章主要介紹了PHP實現的鍊式隊列結構,結合具體實例形式分析了php鍊式隊列的定義及入隊、出隊、打印隊列等基本操作實現與使用方法,需要的朋友可以參考下
本文實例講述了PHP實作的鍊式佇列結構。分享給大家供大家參考,具體如下:
<?php header("Content-Type:text/html;charset=utf-8"); /** * 链式队列 */ class node{ public $nickname; public $next; } class queue { public $front;//头部 public $tail;//尾部 public $maxSize;//容量 public $next;//指针 public $len=0;//长度 public function __construct($size) { $this->init($size); } public function init($size) { $this->front = $this; $this->tail = $this; $this->maxSize = $size; } //入队操作 public function inQ($nickname) { $node = new node(); $node->nickname = $nickname; if ($this->len==$this->maxSize) { echo '队满了</br>'; } else { $this->tail = $node; $this->tail->next = $node; $this->len++; echo $node->nickname.'入队成功</br>'; } } //出队操作 public function outQ() { if ($this->len==0) { echo '队空了</br>'; } else { $p = $this->front->next; $this->front->next = $p->next; $this->len--; echo $p->nickname.'出队成功</br>'; } } //打印队 public function show() { for ($i=$this->len;$i>0;$i--) { $this->outQ(); } } } echo "**********入队操作******************</br>"; $q = new queue(5); $q->inQ('入云龙'); $q->inQ('花和尚'); $q->inQ('青面兽'); $q->inQ('行者'); $q->inQ('玉麒麟'); $q->inQ('母夜叉'); echo "**********出队队操作******************</br>"; $q->outQ(); $q->outQ(); $q->outQ(); $q->outQ(); $q->inQ('操刀鬼'); $q->inQ('截江鬼'); $q->inQ('赤发鬼'); $q->outQ(); ?>
運行結果:
以上是PHP實作鍊式佇列的詳細內容。更多資訊請關注PHP中文網其他相關文章!