婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法示例

PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法示例

熱門(mén)標(biāo)簽:網(wǎng)絡(luò)電話400申請(qǐng) 全國(guó)各省地圖標(biāo)注點(diǎn) 福建高頻外呼防封系統(tǒng)哪家好 400電話申請(qǐng)辦理 周口網(wǎng)絡(luò)回?fù)芡夂粝到y(tǒng) 商丘外呼系統(tǒng)好處 百度地圖標(biāo)注類型是酒店 隨州銷售電銷機(jī)器人公司 外呼系統(tǒng)人工客服

本文實(shí)例講述了PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法。分享給大家供大家參考,具體如下:

概述:

雙向鏈表也叫雙鏈表,是鏈表的一種,它的每個(gè)數(shù)據(jù)結(jié)點(diǎn)中都有兩個(gè)指針,分別指向直接后繼和直接前驅(qū)。所以,從雙向鏈表中的任意一個(gè)結(jié)點(diǎn)開(kāi)始,都可以很方便地訪問(wèn)它的前驅(qū)結(jié)點(diǎn)和后繼結(jié)點(diǎn)。一般我們都構(gòu)造雙向循環(huán)鏈表。

實(shí)現(xiàn)代碼:

?php 
class node{
  public $prev;
  public $next;
  public $data;
  public function __construct($data,$prev=null,$next=null){
    $this->data=$data;
    $this->prev=$prev;
    $this->next=$next;
  }
}
class doubleLinkList{
  private $head;
  public function __construct()
  {
    $this->head=new node("head",null,null);
  }
  //插入節(jié)點(diǎn)
  public function insertLink($data){
    $p=new node($data,null,null);
    $q=$this->head->next;
    $r=$this->head;
    while($q){
      if($q->data>$data){
        $q->prev->next=$p;
        $p->prev=$q->prev;
        $p->next=$q;
        $q->prev=$p;
      }else{
      $r=$q;$q=$q->next;
      }
    }
    if($q==null){
      $r->next=$p;
      $p->prev=$r;
    }
  }
  //從頭輸出節(jié)點(diǎn)
  public function printFromFront(){
    $p=$this->head->next;
    $string="";
    while($p){
    $string.=$string?",":"";
    $string.=$p->data;
    $p=$p->next;
    }
    echo $string."br>";
  }
  //從尾輸出節(jié)點(diǎn)
  public function printFromEnd(){
    $p=$this->head->next;
    $r=$this->head;
    while($p){
    $r=$p;$p=$p->next;
    }
    $string="";
    while($r){
      $string.=$string?",":"";
      $string.=$r->data;
      $r=$r->prev;
    }
    echo $string."br>";
  }
  public function delLink($data){
    $p=$this->head->next;
    if(!$p)
    return;
    while($p){
      if($p->data==$data)
      {
        $p->next->prev=$p->prev;
        $p->prev->next=$p->next;
        unset($p);
        return;
      }
      else{
        $p=$p->next;
      }
    }
    if($p==null)
    echo "沒(méi)有值為{$data}的節(jié)點(diǎn)";
  }
}
$link=new doubleLinkList();
$link->insertLink(1);
$link->insertLink(2);
$link->insertLink(3);
$link->insertLink(4);
$link->insertLink(5);
$link->delLink(3);
$link->printFromFront();
$link->printFromEnd();
$link->delLink(6);

運(yùn)行結(jié)果:

1,2,4,5
5,4,2,1,head
沒(méi)有值為6的節(jié)點(diǎn)

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》及《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • php遞歸調(diào)用刪除數(shù)組空值元素的方法
  • PHP遞歸刪除多維數(shù)組中的某個(gè)值
  • 實(shí)現(xiàn)php刪除鏈表中重復(fù)的結(jié)點(diǎn)
  • 利用PHP實(shí)現(xiàn)遞歸刪除鏈表元素的方法示例

標(biāo)簽:迪慶 十堰 海南 南寧 六安 樂(lè)山 佛山 定西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法示例》,本文關(guān)鍵詞  PHP,實(shí)現(xiàn),雙鏈,表,刪除,與,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法示例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP實(shí)現(xiàn)雙鏈表刪除與插入節(jié)點(diǎn)的方法示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 辰溪县| 岚皋县| 丹凤县| 上思县| 开江县| 香港 | 龙泉市| 阳春市| 萍乡市| 定陶县| 昌宁县| 青浦区| 吴旗县| 阜新| 华容县| 宝坻区| 都昌县| 外汇| 安丘市| 仁化县| 萨嘎县| 花莲市| 浦江县| 白朗县| 福泉市| 刚察县| 彩票| 赫章县| 巴林右旗| 安徽省| 盐山县| 漠河县| 高邑县| 四川省| 康保县| 阜新市| 沙雅县| 邢台县| 陈巴尔虎旗| 常山县| 抚远县|