数据结构:简单理解单链表,python实现单链表

单链表

特点:结点中只包含一个指针域,且首尾不连接

图解
在这里插入图片描述
名词

名词 概念
头指针 指向链表中第一个结点(或为头结点、或为首元结点)的指针
头结点 在链表的首元结点之前附设的一个结点;数据域内只放表长等信息,它不计入表长度。其作用是统一空表、和非空链表的形式
首元结点(开始结点) 指链表中存储线性表第一个数据元素a1的结点
尾结点(结束结点) 指链表中最后一个结点,尾指针指向NULL

大家要明白,链表解决的是我们开发中的什么问题?
数组在插入和删除的时候,需要查找到当前元素,并把后续所有的元素全部向前或者向后移动,而链表在查找到以后,只需要用前一节点的指针指向新的节点或者删除元素的后一节点即可。
可以用大脑想一下,对于无序不相邻的元素,通过链表进行关联,并且可以进行快速的增删是多么方便的一件事!

Python中单链表的实现

#创建结点对象类
class Node(object):
	#创建结点,初始化两个变量,默认均为None,创建新结点传value值即可,next存的是下一个结点对象
    def __init__(self, value=None, next=None):
        self.value, self.next = value, next    


class SingleLink(object):
	#初始化三个变量,
	# final_node:记录最后一个结点
	# root:记录头结点
	# length:记录链表长度
    def __init__(self)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值