1 no = $no;10 $this->name = $name;11 $this->cname = $cname;12 }13 //显示英雄链表14 public static function showHero($head){15 $cur = $head;16 while($cur->next != null){17 echo '英雄编号:'.$cur->next->no.' ';18 echo '英雄姓名:'.$cur->next->name.' ';19 echo '英雄昵称:'.$cur->next->cname.' ';20 echo '';21 $cur = $cur->next;22 }23 echo '
';24 }25 //英雄加到链表末端26 public static function addHero($head,$hero){27 $cur = $head;28 while($cur->next != null){29 $cur = $cur->next;30 }31 $cur->next = $hero;32 }33 //英雄按排序加入34 public static function addHero2($head,$hero){35 $cur = $head;36 while($cur->next != null){37 if($cur->next->no > $hero->no){38 break;39 }40 $cur = $cur->next;41 }42 $hero->next = $cur->next;43 $cur->next = $hero;44 }45 //修改英雄46 public static function editHero($head,$hero){47 $cur = $head;48 while($cur->next != null){49 if($cur->next == $hero){50 break;51 }52 $cur = $cur->next;53 }54 $cur->next->name = $hero->name;55 $cur->next->cname = $hero->cname;56 }57 //删除英雄58 public static function delHero($head,$hero){59 $cur = $head;60 while($cur->next != null){61 if($cur->next == $hero){62 break;63 }64 $cur = $cur->next;65 }66 $cur->next = $hero->next;67 $hero->next = null;68 }69 }70 71 $head = new hero();72 $songjiang =new hero(1,'宋江','及时雨');73 $lujunyi =new hero(2,'卢俊义','玉麒麟');74 75 $head->next = $songjiang;76 $songjiang->next = $lujunyi;77 78 //默认79 hero::showHero($head);80 //加入到链表末端81 $linchong = new hero(6,'林冲','豹子头');82 hero::addHero($head,$linchong);83 hero::showHero($head);84 //按排名加入链表85 $wuyong = new hero(3,'吴用','智多星');86 hero::addHero2($head,$wuyong);87 hero::showHero($head);88 //修改英雄89 $wuyong->name='吴用2';90 hero::editHero($head,$wuyong);91 hero::showHero($head);92 //删除英雄93 hero::delHero($head,$wuyong);94 hero::showHero($head);95 96 ?>
源代码下载: