链表及其基本操作
来源:互联网 发布:淘宝吉他店铺介绍 编辑:程序博客网 时间:2024/05/01 12:26
链表是数据项的集合,一个节点中除了存放数据项以外还有指向节点的指针。链表的主要优势是提供了重新有效的组织数据项的能力,虽然这牺牲了快速访问链表中任意节点的代价,但是其对数据操作的方便时这种代价看起来是很值得的。
一个链表的基本构成应该是一个节点内元素以及指向下一个节点的引用:
同时有一个构造函数是很有必要的:
构建好一个链表的数据类型后我们就能进行相应的操作了。
1:构建一条链表:构建链表的关键无非就是不断的申请出node格式的数据结构,并且通过节点内的next指针将这些结点链接起来,最后在返回链表的head引用就好了。
通过上面的操作就得到一个以head为头结点的链表。
2:遍历链表:遍历链表的关键是通过head通过next指针不断的访问下一个节点,直到指向一个null。
3:增加一个节点:增加节点的关键是先不断的在要增加的地方打断原来的链接,然后构建一个新的链接的过程。当然在增加结点是最特殊的状况值添加末尾以及增加头结点,由于这种情况都比较简单我们不做讨论。我们讨论直接在中间添加的情况。主要的步骤是先找到位置在打断原来的链接将结点添加进去构建一个新的结点的过程。程序的实现是:
4:删除一个节点:其实删除结点与新增一个结点差不多,我们在这里就不进行深入的研究了。
5:链表反向:在面试中遇到最多也是相对来说比较难得结点操作是节点的反向。结点反向的关键操作是
递归版:反向当前结点时先反向后续结点
0 0
- 链表及其基本操作
- 链表基本操作及其反转
- 顺序表及其基本操作
- 线性表及其基本操作
- 块状链表基本操作及其相关例题
- 链表基本操作及其过程详细叙述
- 链表及其基本操作的JAVA实现。
- c语言实现链表及其基本操作
- 链表基本操作及其过程详细叙述
- 静态链表的基本操作及其应用(实验2.3)
- 静态链表的基本操作及其应用(实验2.3)
- 线性表基本概念及其基本操作实现
- 线性表的基本操作及其应用
- 线性表的实现及其基本操作
- 线性表的基本操作及其作用
- 线性表的基本操作及其作用
- 线性表的引入及其基本操作
- 线性表的基本操作及其应用
- Linux 内核内存检测工具 - Kmemcheck
- crond进程的应用
- 类和接口的综合案例
- 大一下学期第2周项目旱冰场造价(类和对象)
- Sql Service Insert时返回插入的主键
- 链表及其基本操作
- Android客户端与服务器端的json数据交互(很详细)
- Java基础第五天--内部类,包,修饰符
- 国内Android SDK 镜像站配置
- FreeSWITCH代码分析
- Java处理某些图片红色问题
- Eclipse中通过Tomcat运行J2EE项目 java.lang.OutOfMemoryError:PermGen space的解决方案
- 13、自定义属性之开关(本身实现的也是自定义控件,只是加了自定义属性),和13、自定义控件之开关略有不同
- 谈谈离职和跳槽