简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

php小教程之实现链表

来源:易贤网   阅读:1294 次  日期:2014-10-08 14:04:04

温馨提示:易贤网小编为您整理了“php小教程之实现链表”,方便广大网友查阅!

看了很久数据结构但是没有怎么用过,在网上看到了关于php的数据结构,学习了一下,与大家一起分享一下。

代码如下:

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>;

}

}

}

//创建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技术专栏

更多信息请查看网络编程
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:ci(codeigniter)框架配置
下一篇:浅谈eclipse pdt调试php程序
易贤网手机网站地址:php小教程之实现链表
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!