php数据结构 链表,php数据结构-单链表
//单链表
class hero{
var $name;
var $sn;
var $names;
var $next;
public function __construct($sn='',$name='',$names='',$next=''){
$this->name=$name;
$this->sn=$sn;
$this->names=$names;
$this->next=$next;
}
}
//头结点
$head=new hero();
//增加链表节点
function addHero($head,$hero){
$cul=$head;
while($cul->next!=null){
if($cul->next->sn>$hero->sn){
$hero->next=$cul->next;
$cul->next=$hero;
$flag='';
break;
}
$cul=$cul->next;
}
if(!isset($flag))
$cul->next=$hero;
}
//遍历链表
function showHero($head){
$cul=$head;
while($cul->next!=null){
echo $cul->next->sn.' '.$cul->next->name.' '.$cul->next->names.'
';
$cul=$cul->next;
}
//echo 'a'.$head->name.'
';
}
//删除链表节点
function delHero($head,$sn){
$cul=$head;
while($cul->next!=null){
if($cul->next->sn==$sn){
$cul->next=$cul->next->next;
$flag='';
break;
}
$cul=$cul->next;
}
if(!isset($flag))echo $sn.'的英雄没找到
';
}
//修改节点
function editHero($head,$hero){
$cul=$head;
while($cul->next!=null){
if($hero->sn==$cul->next->sn){
$hero->next=$cul->next->next;
$cul->next=$hero;
$flag='';
break;
}
$cul=$cul->next;
}
if(!isset($flag))echo $hero->sn.'的英雄没找到
';
}
//测试
//增加节点
$hero=new hero(1,'小宝','小宝宝');
addHero($head,$hero);
$hero=new hero(2,'小贝','小贝贝');
addHero($head,$hero);
$hero=new hero(3,'小白','小白白');
addHero($head,$hero);
$hero=new hero('6','香兰','向兰兰');
addHero($head,$hero);
$hero=new hero('4','李峰','李峰分');
addHero($head,$hero);
$hero=new hero('5','刘雪','刘雪雪');
addHero($head,$hero);
$hero=new hero('7','寒梅','韩梅梅');
addHero($head,$hero);
//遍历节点
showHero($head);
//删除节点
echo '
删除后
';
delHero($head,2);
showHero($head);
//修改节点
echo '
修改后
';
$hero=new hero('4','赵峰','赵凤凤');
editHero($head,$hero);
showHero($head);
?>
php数据结构 链表,php数据结构-单链表相关推荐
- 数据结构实验之链表五:单链表的拆分-sdut
数据结构实验之链表五:单链表的拆分 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 输入N个 ...
- SDUT_2122 数据结构实验之链表七:单链表中重复元素的删除
提交代码 数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Proble ...
- 【数据结构链表】之五单链表
一:链表基础 1.链表基础----------------摘录自百度百科 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中 ...
- 数据结构与算法:单链表(利用万能指针实现对任意类型数据进行操作)
前言 C语言的指针真的很强大,万能指针更强大,可以指向任意类型的数据.在上篇博客 数据结构与算法:单链表(超详细实现)中用C语言实现了单链表的相关算法,不过却有局限性 只能针对某一种数据类型还是不够强 ...
- 数据结构与算法:单链表(超详细实现)
实现算法预览 这次博主写的单链表主要实现了以下算法.所有功能可进行循环运行测试.欢迎各位指正. LinkList.h #pragma once #ifndef __LINKLIST_H__ #defi ...
- 数据结构与算法之单链表
数据结构与算法之单链表 //链表的实现/*实现单链表的 构建.数据添加.数据删除(返回元素所在位置).数据查找(返回元素所在的位置)的算法设计:*/ //链表的实现/*实现单链表的 构建.数据添加.数 ...
- 【1138】数据结构上机测试2-1:单链表操作A(顺序建表+删除节点)(SDUT)
数据结构上机测试2-1:单链表操作A Time Limit: 1000ms Memory limit: 4096K 有疑问?点这里^_^ 题目描述 输入n个整数,先按照数据输入的顺序建立一个带头 ...
- 数据结构(二)——单链表的头插与尾插
一.引言 上篇文章我们知道了顺序表的缺点: 插入和删除操作需要移动大量元素. 数组的大小不好确定. 存储分配需要一整段连续的存储空间,不够灵活,造成很多碎片(空闲的空间得不到利用). 所以我们就引入了 ...
- 数据结构练习:运用单链表实现图书管理系统(c/c++)(内含带头结点的单链表的基本操作)
数据结构练习:运用单链表实现图书管理系统 正文 注意 部分功能运行展示 所包含头文件及结构体的定义 自定义函数 主函数 完整代码 结束语 正文 本程序使用带头节点的单链表存储结构实现,共有六个基本功能 ...
- (数据结构与算法)单链表与双链表增删改查的实现。
文章目录 链表介绍 1. 单链表应用实例 1.1 实现思路 1.2 代码实现 2.单链表常见面试题 2.1 求单链表中有效节点的个数 2.2 查找单链表中倒数第K个节点 2.3 单链表的反转 2.4 ...
最新文章
- iOS 9应用开发教程之ios9中实现按钮的响应
- GPU 加速下的图像处理
- 最大连续子数组和 动态规划_剑指Offer算法题 33:连续子数组的最大和
- eZ publish 3 安装指南
- 怎样在hdfs上创建多级目录文件夹_【HDFS API编程】第一个应用程序的开发-创建文件夹...
- 洛谷P3379 【模板】最近公共祖先(LCA)
- [转]bookmark整理之.NET编程相关
- 基于Pairwise排序学习的因子分解推荐算法
- php 查询access数据库操作,php操作access数据库的方法详解
- 大M法(Big M Method)
- 路由交换技术(一)---- 网络基础概述
- VB弹出“访问系统注册表错误”提示对话框
- Unity Spine动画如何选定帧数(时间)播放
- 【通識:人生哲學與幸福】老子人生觀巡禮
- Intranet/Internet
- Docker--容器挂载
- STM32中的程序在RAM还是FLASH里运行?
- 54亿美元!谷歌收购Mandiant,推动网络安全行业创新
- 免费矢量图标网站都有哪些,推荐这10个
- 计算机检修与维修教程 ppt,计算机维护与维修教程_中.ppt
热门文章
- 60创意的USB设备和小工具
- [矩阵求逆+二分图匹配]BZOJ 3168 [Heoi2013]钙铁锌硒维生素
- coldfusion_ColdFusion中的一周:1月30日至2月5日:一切
- 科学大家谈 | 全球著名蛋白质工程学家——张阳
- 大数据 客户标签体系_大数据标签体系建立
- 每日一思(2022.5.19)——前无古人后无来者
- mac连接android手机存储,Android安卓设备连接Mac的方法
- 开利网络拜访普恺图酒业总部,品高端酒,探共赢合作方案
- Dlink DIR-615L 和 Mercury MW300R WDS 应用举例
- 剑指offe面试题8 旋转数组的最小数字 (java实现)