标题Python如何创建一个单链表,以及实现单链表的增,删,改,查操作,以及对单链表的排序功能
#功能:
实现单链表的构建和功能操作
#定义单链表的类
class Node:
"""
思路:将自定义的类视为节点的生成类,实例对象中
包含数据部分和指向下一个节点的next
"""
def __init__(self, val, next=None):
self.val = val # 有用数据
self.next = next # 循环链接下一个节点关系
#单链表的操作逻辑
class LinkList:
"""
思想:单链表类,生成对象可以进行增删改查操作
"""
# 创建数据为空的一个链表头
def __init__(self):
"""
初始化链表,标记一个链表的开端,以便于获取后续的节点
:param val:
"""
self.head = Node(None)
# 通过list_为链表添加一组节点
def init_list(self, list_):
p = self.head # p作为移动变量
for item in list_:
p.next = Node(item)
p = p.next
# 遍历列表
def show(self):
p = self.head.next # 第一个有效节点
while p is not