
数据结构和算法
ITRenj
相互学习,共同进步
展开
-
数据结构——链表(二)
在《数据结构——链表(一)》一文中,我们介绍了链表的基本操作与实现,这篇文章我们来进一步学习链表的一些操作 链表进阶 判断单向链表是否有环 快慢指针法: 定义两个指针,通过两个指针的移动速度不同来实现功能,常用来寻找中间节点(快指针移动速度是慢指针的两倍,快指针移动到结尾时,慢指针刚好在中间)、判断单链表是否有环等操作。 利用快慢指针法判断单链表是否有环的代码实现如下: public boolean hasCircle() { if (header == null) return false;原创 2020-10-24 20:38:36 · 330 阅读 · 0 评论 -
数据结构——链表(一)
链表基础 链表 链表是由一组不必相连【不必相连:可以连续也可以不连续】的内存结构,按特定的顺序链接在一起的抽象数据类型。是一种线性表,但是并不会按线性的顺序存储数据,而是在由一个个节点组成,节点一般包含存放数据的数据域和存放指针的指针域。 补充: 抽象数据类型(Abstract Data Type [ADT]):表示数学中抽象出来的一些操作的集合。 内存结构:内存中的结构,如:struct、特殊内存块...等等之类; 下图就是一种简单的链表 对比数组 数组是在相连的内存空间,由相同数据类原创 2020-10-24 20:23:52 · 371 阅读 · 0 评论