数据结构与算法 链表

本文介绍了链表的基本概念,包括单链表的结构和特性,并详细讲解了如何使用Python实现链表,包括创建节点类、链表类,以及实现链表的遍历、添加、删除和查找等基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、链表的概念

链表是一种顺序表,其特点是在每一个节点里存放下一个节点的位置信息,用指针指向下一个节点,从而实现灵活存取。
链表在这里插入图片描述
单链表的每个节点包含两个域,信息域和链接域,链接域指向链表的下一个节点,最后一个节点的链接域指向空值。
在这里插入图片描述
1.elem 用来存放具体数据
2.链接域next用来存放下一个节点的位置
3.变量p指向链表的首节点,从p出发能找到表中的任意一个节点

二、链表的代码实现

(一)创建节点类
class SingleNode(object):
    """单链表的节点"""

    def __init__(self, item):
        # 使用item存放数值,将其初始化
        self.item = item
        # next为指针,创建一个新节点,下一个节点为空,故指针指向None
        self.next = None
(二)创建链表类
class SingleLinkList(object):
    	"""单链表"""

    def __init__(self):
        self._head = None

    def is_empty(self):
        """判断单链表是否为空"""
        return self._head == None
        # 头节点为none,则链表为空

    def length(self):
    	"""查看链表长度"""
        cur = self._head  # cur初始时指向头节点
        count = 0  # 计数器初始时为0
        while cur != None:
            count += 1
            cur 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值