PHP實(shí)現(xiàn)的鏈?zhǔn)疥?duì)列結(jié)構(gòu)示例
本文實(shí)例講述了PHP實(shí)現(xiàn)的鏈?zhǔn)疥?duì)列結(jié)構(gòu)。分享給大家供大家參考,具體如下:
<?php
header("Content-Type:text/html;charset=utf-8");
/**
* 鏈?zhǔn)疥?duì)列
*/
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;
}
//入隊(duì)操作
public function inQ($nickname)
{
$node = new node();
$node->nickname = $nickname;
if ($this->len==$this->maxSize)
{
echo '隊(duì)滿了</br>';
} else {
$this->tail = $node;
$this->tail->next = $node;
$this->len++;
echo $node->nickname.'入隊(duì)成功</br>';
}
}
//出隊(duì)操作
public function outQ()
{
if ($this->len==0)
{
echo '隊(duì)空了</br>';
} else {
$p = $this->front->next;
$this->front->next = $p->next;
$this->len--;
echo $p->nickname.'出隊(duì)成功</br>';
}
}
//打印隊(duì)
public function show()
{
for ($i=$this->len;$i>0;$i--)
{
$this->outQ();
}
}
}
echo "**********入隊(duì)操作******************</br>";
$q = new queue(5);
$q->inQ('入云龍');
$q->inQ('花和尚');
$q->inQ('青面獸');
$q->inQ('行者');
$q->inQ('玉麒麟');
$q->inQ('母夜叉');
echo "**********出隊(duì)隊(duì)操作******************</br>";
$q->outQ();
$q->outQ();
$q->outQ();
$q->outQ();
$q->inQ('操刀鬼');
$q->inQ('截江鬼');
$q->inQ('赤發(fā)鬼');
$q->outQ();
?>
運(yùn)行結(jié)果:

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- PHP基于數(shù)組實(shí)現(xiàn)的堆棧和隊(duì)列功能示例
- 關(guān)于PHP堆棧與列隊(duì)的學(xué)習(xí)
- php線性表的入棧與出棧實(shí)例分析
- PHP基于堆棧實(shí)現(xiàn)的高級計(jì)算器功能示例
- PHP實(shí)現(xiàn)的棧數(shù)據(jù)結(jié)構(gòu)示例【入棧、出棧、遍歷棧】
- PHP實(shí)現(xiàn)基于棧的后綴表達(dá)式求值功能
- PHP使用數(shù)組實(shí)現(xiàn)隊(duì)列
- php實(shí)現(xiàn)的雙向隊(duì)列類實(shí)例
- 隊(duì)列在編程中的實(shí)際應(yīng)用(php)
- php基于雙向循環(huán)隊(duì)列實(shí)現(xiàn)歷史記錄的前進(jìn)后退等功能
- PHP使用兩個(gè)棧實(shí)現(xiàn)隊(duì)列功能的方法
相關(guān)文章
asp函數(shù)split()對應(yīng)php函數(shù)explode()
今天小編就為大家分享一篇關(guān)于asp函數(shù)split()對應(yīng)php函數(shù)explode(),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-02-02
php比較多維數(shù)組中值的大小排序?qū)崿F(xiàn)代碼
php中根據(jù)數(shù)組的鍵(key)進(jìn)行比較,排序,有很多內(nèi)置函數(shù)可以輕松解決,如krsort(), ksort()等。如果是根據(jù)數(shù)組的值(value)進(jìn)行比較就麻煩一些2012-09-09
php堆排序?qū)崿F(xiàn)原理與應(yīng)用方法
這篇文章主要介紹了php堆排序?qū)崿F(xiàn)原理與應(yīng)用方法,較為詳細(xì)的分析了堆排序的原理及使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01
PHP從二維數(shù)組得到N層分類樹的實(shí)現(xiàn)代碼
這篇文章主要介紹了PHP從二維數(shù)組得到N層分類樹的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-10-10

