日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php行列,【后端开辟】php 怎样完成行列

發布時間:2023/12/31 php 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php行列,【后端开辟】php 怎样完成行列 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

php怎樣完成行列?

此行列算法中有兩個類:

第一個是data類,這個類是寄存數據;

第二個是queue類,也就是行列類這個就是行列的一些操縱;

起首行列里包括四個屬性:

front(行列的頭,也就是出隊是要出去的)

rear(行列的尾部在這里永久指向0)

queue(寄存一切入隊的data對像,queue中默許存在一個元素當空時front和rear都指向他)

maxsize(行列的長度)

運用申明:

1初始化行列:生成一個行列傳入一個參數作為maxsize初始化行列把rear設為0 ,front設為0此時queue中只要0號元素rear和front都指向他

2.入隊:推斷行列是不是已滿(front-rear==maxsize),假如滿提醒,若果沒滿先讓front+1,然后讓一切行列中的元素像前挪動一名(也就是給新來的讓出隊尾位置),然后生成data對象插進去到隊尾+1的位置。此時入隊勝利!

3.出隊:推斷行列是不是為空(front==rear),如空提醒,如不為空,刪除front指向的對象,front-1(向后挪動一名),出隊勝利!

/**

* php行列算法

*

* Create On 2010-6-4

* Author Been

* QQ:281443751

* Email:binbin1129@126.com

**/

class data {

//數據

private $data;

public function __construct($data){

$this->data=$data;

echo $data.":哥進隊了!
";

}

public function getData(){

return $this->data;

}

public function __destruct(){

echo $this->data.":哥走了!
";

}

}

class queue{

protected $front;//隊頭

protected $rear;//隊尾

protected $queue=array('0'=>'隊尾');//存儲行列

protected $maxsize;//最大數

public function __construct($size){

$this->initQ($size);

}

//初始化行列

private function initQ($size){

$this->front=0;

$this->rear=0;

$this->maxsize=$size;

}

//推斷隊空

public function QIsEmpty(){

return $this->front==$this->rear;

}

//推斷隊滿

public function QIsFull(){

return ($this->front-$this->rear)==$this->maxsize;

}

//獵取隊首數據

public function getFrontDate(){

return $this->queue[$this->front]->getData();

}

//入隊

public function InQ($data){

if($this->QIsFull())echo $data.":我一來咋就滿了!(隊滿不能入隊,請守候!)
";

else {

$this->front++;

for($i=$this->front;$i>$this->rear;$i--){

//echo $data;

if($this->queue[$i])unset($this->queue[$i]);

$this->queue[$i]=$this->queue[$i-1];

}

$this->queue[$this->rear+1]=new data($data);

//print_r($this->queue);

//echo $this->front;

echo '入隊勝利!
';

}

}

//出隊

public function OutQ(){

if($this->QIsEmpty())echo "隊空不能出隊!
";

else{

unset($this->queue[$this->front]);

$this->front--;

//print_r($this->queue);

//echo $this->front;

echo "出隊勝利!
";

}

}

}

$q=new queue(3);

$q->InQ("小苗");

$q->InQ('馬帥');

$q->InQ('滑冰');

$q->InQ('張世佳');

$q->OutQ();

$q->InQ("周瑞曉");

$q->OutQ();

$q->OutQ();

$q->OutQ();

$q->OutQ();

運轉效果:

小苗:哥進隊了!

入隊勝利

馬帥:哥進隊了!

入隊勝利

滑冰:哥進隊了!

入隊勝利

張世佳:我一來咋就滿了!(隊滿不能入隊,請守候!)

小苗:哥走了!

出隊勝利!

周瑞曉:哥進隊了!

入隊勝利

馬帥:哥走了!

出隊勝利!

滑冰:哥走了!

出隊勝利!

周瑞曉:哥走了!

出隊勝利!

隊空不能出隊!

隊空不能出隊!

以上就是php 怎樣完成行列的細致內容,更多請關注ki4網別的相干文章!

收藏 | 0

總結

以上是生活随笔為你收集整理的php行列,【后端开辟】php 怎样完成行列的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。