复制代码代码如下所示:
< PHP

列出节点
类结{
公共$ id;
公共名称$;节点名
下一个节点;下一个节点


公共功能__construct($id,$name){
此$;
这个名字;
$;
}
}

单一列表
类singellinklist {
私有$报头;


构建方法
公共功能__construct($id = null,$name = null){
这个新节点($ id,$,NULL);
}

获取链长
公共功能getlinklength(){
$ I = 0;
$当前= $;
同时(当前$ >下一步)!= NULL){
美元+;
$当前=当前-下一个;
}
返回$ i;
}

添加节点数据
公共功能addlink(元结){
$当前= $;
同时(当前$ >下一步)!= NULL){
如果(当前值>下一个> ID >节点> ID){
打破;
}
$当前=当前-下一个;
}
下一个节点;
$当前>下一个=节点;
}

删除列表节点
公共功能dellink($id){
$当前= $;
$标志= false;
同时(当前$ >下一步)!= NULL){
如果(当前值>下一个> id = $ id){
$标志=真;
打破;
}
$当前=当前-下一个;
}
如果($标志){
当前$ >下一个;
{人}
没有找到id。$节点!;
}
}

获取/列出
公共功能的生物(){
$当前= $;
如果(当前- >下一个= NULL){
列表为空!;
返回;
}
同时(当前$ >下一步)!= NULL){
echo'id:'。当前值>下一个id名称:。$当前>下一个>名称;
如果(当前-下一行>下一个)
打破;
}
$当前=当前-下一个;
}
}

获取节点名
公共功能getlinknamebyid($id){
$当前= $;
如果(当前- >下一个= NULL){
列表是空的!;
返回;
}
同时(当前$ >下一步)!= NULL){
如果(当前$ > id = $ id){
打破;
}
$当前=当前-下一个;
}
返回当前值>名称;
}

更新节点名
公共功能updatelink($id,$name){
$当前= $;
如果(当前- >下一个= NULL){
列表是空的!;
返回;
}
同时(当前$ >下一步)!= NULL){
如果(当前$ > id = $ id){
打破;
}
$当前=当前-下一个;
}
返回当前值>名称= $ name;
}
}

$列表=新(singellinklist);
$列表-> addlink(新节点(5,eeeeee '));
$列表-> addlink(新节点(1,aaaaaa '));
$列表-> addlink(新节点(6,ffffff '));
$列表-> addlink(新节点(4,dddddd '));
$列表-> addlink(新节点(3,cccccc '));
$列表-> addlink(新节点(2,bbbbbb '));
($列表->生物);
删除节点;
$列表-> dellink(5);
($列表->生物);

回声更新节点名称;
$列表-> updatelink(3,222222 );
($列表->生物);

回声访问节点名称;
echo $列表-> getlinknamebyid(5);

获取链长度;
echo $列表-> getlinklength();
>