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

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

  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。

相关推荐
用户00993831430132 分钟前
代码随想录算法训练营第十三天 | 二叉树part01
数据结构·算法
shinelord明35 分钟前
【再谈设计模式】享元模式~对象共享的优化妙手
开发语言·数据结构·算法·设计模式·软件工程
薄荷故人_1 小时前
从零开始的C++之旅——红黑树及其实现
数据结构·c++
努力学习编程的伍大侠1 小时前
基础排序算法
数据结构·c++·算法
XiaoLeisj2 小时前
【递归,搜索与回溯算法 & 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)
数据结构·算法·leetcode·决策树·深度优先·剪枝
Jackey_Song_Odd3 小时前
C语言 单向链表反转问题
c语言·数据结构·算法·链表
乐之者v3 小时前
leetCode43.字符串相乘
java·数据结构·算法
A懿轩A4 小时前
C/C++ 数据结构与算法【数组】 数组详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·数组
️南城丶北离5 小时前
[数据结构]图——C++描述
数据结构··最小生成树·最短路径·aov网络·aoe网络
✿ ༺ ོIT技术༻5 小时前
C++11:新特性&右值引用&移动语义
linux·数据结构·c++