php小教程之實現(xiàn)鏈表
來源:易賢網 閱讀:1048 次 日期:2014-10-08 14:04:04
溫馨提示:易賢網小編為您整理了“php小教程之實現(xiàn)鏈表”,方便廣大網友查閱!

看了很久數(shù)據(jù)結構但是沒有怎么用過,在網上看到了關于php的數(shù)據(jù)結構,學習了一下,與大家一起分享一下。

代碼如下:

class hero

{

public $no;//排名

public $name;//名字

public $next=null;//$next是一個引用,指向另外一個hero的對象實例

public function __construct($no='',$name='')

{

$this->no=$no;

$this->name=$name;

}

static public function showlist($head)

{

$cur = $head;

while($cur->next!=null)

{

echo 排名:.$cur->next->no.,名字:.$cur->next->name.<br>;

$cur = $cur->next;

}

}

//普通插入

static public function addhero($head,$hero)

{

$cur = $head;

while($cur->next!=null)

{

$cur = $cur->next;

}

$cur->next=$hero;

}

//有序的鏈表的插入

static public function addherosorted($head,$hero)

{

$cur = $head;

$addno = $hero->no;

while($cur->next->no <= $addno)

{

$cur = $cur->next;

}

/*$tep = new hero();

$tep = $cur->next;

$cur->next = $hero;

$hero->next =$tep;*/

$hero->next=$cur->next;

$cur->next=$hero;

}

static public function deletehero($head,$no)

{

$cur = $head;

while($cur->next->no != $no && $cur->next!= null)

{

$cur = $cur->next;

}

if($cur->next->no != null)

{

$cur->next = $cur->next->next;

echo 刪除成功<br>;

}

else

{

echo 沒有找到<br>;

}

}

static public function updatehero($head,$hero)

{

$cur = $head;

while($cur->next->no != $hero->no && $cur->next!= null)

{

$cur = $cur->next;

}

if($cur->next->no != null)

{

$hero->next = $cur->next->next;

$cur->next = $hero;

echo 更改成功<br>;

}

else

{

echo 沒有找到<br>;

}

}

}

//創(chuàng)建head頭

$head = new hero();

//第一個

$hero = new hero(1,'111');

//連接

$head->next = $hero;

//第二個

$hero2 = new hero(3,'333');

//連接

hero::addhero($head,$hero2);

$hero3 = new hero(2,'222');

hero::addherosorted($head,$hero3);

//顯示

hero::showlist($head);

//刪除

hero::deletehero($head,4);

//顯示

hero::showlist($head);

//更改

$hero4=new hero(2,'xxx');

hero::updatehero($head,$hero4);

//顯示

hero::showlist($head);

有序的插入的話需要遍歷一遍鏈表,鏈表的一些知識就不介紹了哈。這里主要分享一下代碼。

更多信息請查看IT技術專欄

更多信息請查看網絡編程
易賢網手機網站地址:php小教程之實現(xiàn)鏈表

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網