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

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

  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。

相关推荐
Qres82113 分钟前
算法复键——树状数组
数据结构·算法
牛油果子哥q3 小时前
并查集(DSU)超精讲,路径压缩、按秩合并、万能模板、连通性判定、最小生成树与刷题实战全解
数据结构·c++·最小生成树·并查集
凌波粒4 小时前
LeetCode--491.递增子序列(回溯算法)
数据结构·算法·leetcode
WL学习笔记5 小时前
单项不带头不循环链表
数据结构·链表
小糯米6015 小时前
JS 数组
数据结构·算法·排序算法
小欣加油5 小时前
leetcode3612 用特殊操作处理字符串I
数据结构·c++·算法·leetcode·职场和发展
凌波粒5 小时前
LeetCode--90.子集II(回溯算法)
数据结构·算法·leetcode
凌波粒6 小时前
LeetCode--46.全排列(回溯算法)
数据结构·算法·leetcode
吃着火锅x唱着歌6 小时前
LeetCode 2530.执行K次操作后的最大分数
数据结构·算法·leetcode
CoderYanger6 小时前
A.每日一题:2095. 删除链表的中间节点
java·数据结构·程序人生·leetcode·链表·面试·职场和发展