单链表操作之遍历
几乎数组上所有的操作都是基于索引的,而索引是数组结构一个不可或缺的部分。在链表结构上,必须通过操作结构在的链接来模拟基于索引的操作。
访问链表的每一个节点,而不删除它们,这种操作叫做遍历。
它使用的是临时的指针变量,这个变量先初始化链表结构的head指针,然后控制一个循环,如下:
# coding: utf-8 class Node(object): def __init__(self, data, next=None): self.data = data self.next = next head = None for count in range(1,6): head = Node(count, head) print head.data, head.next,head probe = head while probe != None: probe = probe.next print probe print head
在上述代码结束的时候,probe指针是None,但是head指针仍然引用第一个节点。
通常遍历一个单链表结构会访问每一个节点,但是当遇到一个空链接的时候终止。因此,值None充当负责停止这个过程的哨兵。
遍历在时间上是线性的,并且不需要额外的内存。
结束!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步