PHP小教程之实现链表
2023-06-13 09:15:27 时间
看了很久数据结构但是没有怎么用过,在网上看到了关于PHP的数据结构,学习了一下,与大家一起分享一下。
classHero
{
public$no;//排名
public$name;//名字
public$next=null;//$next是一个引用,指向另外一个Hero的对象实例
publicfunction__construct($no="",$name="")
{
$this->no=$no;
$this->name=$name;
}
staticpublicfunctionshowList($head)
{
$cur=$head;
while($cur->next!=null)
{
echo"排名:".$cur->next->no.",名字:".$cur->next->name."<br>";
$cur=$cur->next;
}
}
//普通插入
staticpublicfunctionaddHero($head,$hero)
{
$cur=$head;
while($cur->next!=null)
{
$cur=$cur->next;
}
$cur->next=$hero;
}
//有序的链表的插入
staticpublicfunctionaddHeroSorted($head,$hero)
{
$cur=$head;
$addNo=$hero->no;
while($cur->next->no<=$addNo)
{
$cur=$cur->next;
}
/*$tep=newHero();
$tep=$cur->next;
$cur->next=$hero;
$hero->next=$tep;*/
$hero->next=$cur->next;
$cur->next=$hero;
}
staticpublicfunctiondeleteHero($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>";
}
}
staticpublicfunctionupdateHero($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=newHero();
//第一个
$hero=newHero(1,"111");
//连接
$head->next=$hero;
//第二个
$hero2=newHero(3,"333");
//连接
Hero::addHero($head,$hero2);
$hero3=newHero(2,"222");
Hero::addHeroSorted($head,$hero3);
//显示
Hero::showlist($head);
//删除
Hero::deleteHero($head,4);
//显示
Hero::showlist($head);
//更改
$hero4=newHero(2,"xxx");
Hero::updateHero($head,$hero4);
//显示
Hero::showlist($head);
有序的插入的话需要遍历一遍链表,链表的一些知识就不介绍了哈。这里主要分享一下代码。
相关文章
- medoo轻量级的php数据库框架-----常用操作总结
- php://input allow_url_include,DVWA设置PHP函数allow_url_include:已禁用
- 十天学会PHP_十天学会php教程
- php静态延迟方法,phpstatic延迟静态绑定_PHP教程
- jQuery + Php 文章页内容批注评论功能实现
- [PHP代码]php代码书写规范和要求
- PHP命令执行php文件需要注意的问题详解编程语言
- php open_basedir的使用与性能分析详解编程语言
- 开发深入浅出:Linux环境下的PHP开发(linux环境php)
- 命令在PHP中执行Linux命令的方法(php执行linux)
- 数据库快速修改MySQL数据库:使用PHP进行快速修改(php修改mysql)
- Linux下打开PHP文件的实用技巧(linux打开php文件)
- PHP连接MySQL:实现数据交互(php与mysql连接)
- 学习PHP与MySQL:一个完美的开始(php与mysql教程)
- Linux平台如何测试PHP环境(linux测试php环境)
- 使用PHP操作Redis实例:简单高效的数据存储方案(php操作redis实例)
- 教你如何用PHP获取MySQL数据库中的数据(php获取mysql数据)
- PHP轻松获取MySQL错误信息教程(php获取mysql错误)
- 数据库连接使用PHP连接MSSQL数据库的指南(phpmssql)
- PHP操作MySQL:删除字段(php删除mysql字段)
- 使用PHP遍历MySQL数据库 – 一步一步教程(php遍历mysql)
- 如何使用PHP重启Linux服务:简易教程(php重启linux服务)
- 轻松搞定:PHP安装MSSQL扩展教程(php安装mssql扩展)
- 快速学习PHP Redis的使用方法(php redis怎么用)
- 一步一步教你PHP操作MSSQL的下载方法(php_mssql下载)
- Linux 下快速安装 PHP(linux 下安装php)
- Redis实现PHP限流策略(redis限流php)
- php和js交互一例-PHP教程,PHP应用
- PHP得到某段时间区间的时间戳php定时任务
- php教程插件机制在PHP中实现方案
- PHP关于IE下的iframe跨域导致session丢失问题解决方法
- php中的静态变量的基本用法
- 云主机搭建php+mysql运行环境教程(护卫神PHP套件)
- 配置php.ini实现PHP文件上传功能
- 可以保证单词完整性的PHP英文字符串截取代码分享