数据结构单链表的前插法实现

单链表的前插法实现可以通过以下步骤进行:

  1. 创建一个新的节点,并将要插入的元素存储在新节点的数据域中。

  2. 将新节点的指针域指向原链表的头节点。

  3. 将原链表的头节点指向新节点。

具体代码实现如下所示:

python 复制代码
class Node:
    def __init__(self, data):
        self.data = data
        self.next = None

def insert_list_front(head, data):
    new_node = Node(data)  # 创建新节点
    new_node.next = head  # 将新节点的指针域指向原链表的头节点
    head = new_node  # 将原链表的头节点指向新节点
    return head

# 创建一个单链表
head = Node(1)
second = Node(2)
third = Node(3)

head.next = second
second.next = third

# 在单链表的前面插入一个新节点
head = insert_list_front(head, 0)

# 打印插入节点后的链表
current = head
while current:
    print(current.data, end=" ")
    current = current.next

输出结果为:0 1 2 3,表示在原链表的前面插入了一个新节点0。

相关推荐
ElseWhereR32 分钟前
反转链表 - 简单
数据结构·链表
共享家95271 小时前
红黑树解析
数据结构·c++·算法
夜晚中的人海2 小时前
【C语言】初阶数据结构相关习题(二)
c语言·开发语言·数据结构
dddaidai1232 小时前
Redis数据结构
数据结构·redis·hash table
cdut_suye2 小时前
【Linux系统】从 C 语言文件操作到系统调用的核心原理
java·linux·数据结构·c++·人工智能·机器学习·云计算
灵典3363 小时前
数据结构入门-二叉树的层序遍历
数据结构·算法
轮到我狗叫了3 小时前
力扣.1471数组的k个最强值,力扣.1471数组的k个最强值力扣1576.替换所有的问号力扣1419.数青蛙编辑力扣300.最长递增子序列
java·数据结构·算法
敲代码的瓦龙4 小时前
STL?list!!!
c语言·开发语言·数据结构·c++·windows·list
程序员莫小特4 小时前
【GESP真题解析】第 20 集 GESP 二级 2025 年 3 月编程题 1:等差矩阵
c语言·数据结构·c++·算法·青少年编程·矩阵
ROCKY_8174 小时前
数据结构(九)——排序
数据结构·算法·排序算法