欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

數(shù)據(jù)結(jié)構(gòu)之隊列——鏈式存儲結(jié)構(gòu)(php代碼實現(xiàn))

<?php

class QNode{
    public  $data;
    public  $next;
    public function __construct($data){
        $this->data=$data;
        $this->next=null;
    }
}

class LinkQueue{ //鏈隊列包含頭結(jié)點,實例化時,此隊列為空
    private $data;
    private $next;
    private $front;//指向頭結(jié)點
    private $rear;//指向尾結(jié)點
//    private $length;
    public function __construct(){
        $this->data=null;
        $this->next=null;
        $this->front=$this; //指向頭結(jié)點
        $this->rear=$this;//指向頭結(jié)點
//        $this->length=0;
    }

    //銷毀隊列
    public function DestroyQueue(){
        while($this->front){ //銷毀首先是從頭結(jié)點開始
            $this->rear=$this->front->next;
            unset($this->front);
            $this->front=$this->rear;
        }
    }

    //清空隊列
    public function ClearQueue(){
        $p=$this->front->next;
        while($p){
            $q=$p->next;
            unset($p);
            $p=$q;
        }
        $this->front->next=null;
        $this->rear=$this->front;
    }

    //隊列是否為空
    public function QueueEmpty(){
        if($this->front==$this->rear){
            return 'Null';
        }else{
            return 'No Null';
        }
    }

    //隊列的長度
    public function QueueLength(){
        $p=$this->front;
        $i=0;
        while($p != $this->rear){
            $i++;
            $p=$p->next;
        }
        return $i;
//        return $this->length;
    }

    //取得隊頭元素
    public function GetHead(){
        if($this->front==$this->rear){
            return 'ERROR';
        }
        return $this->front->next->data;
    }

    //從隊尾插入元素
    public function EnQueue(){
        $node=new QNode(mt_rand(100,200));
        $node->next=$this->rear->next;
        $this->rear->next=$node;
        $this->rear=$node;
        $this->length++;
    }

    //從隊頭刪除元素
    public function DeQueue(){
        if($this->front==$this->rear){
            return 'ERROR';
        }
        $p=$this->front->next;
        unset($this->front->next);
        $this->front->next=$p->next;

        if($this->rear==$p){ //如果只有一個元素那么,為指針就需要變化了。
            $this->rear=$this->front;
        }
        $this->length--;
        return 'OK';
    }

    //遍歷隊列元素
    public function QueueTraverse(){
        if($this->front==$this->rear){
            return 'ERROR';
        }

        $arr=array();
        $p=$this->front->next;
        while($p){
            $arr[]=$p->data;
            $p=$p->next;
        }
        return $arr;
    }
}

文章名稱:數(shù)據(jù)結(jié)構(gòu)之隊列——鏈式存儲結(jié)構(gòu)(php代碼實現(xiàn))
本文路徑:http://chinadenli.net/article46/jggeeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)網(wǎng)站制作靜態(tài)網(wǎng)站商城網(wǎng)站標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)