Python的单向链表实现
思路 链表由节点组成,先规定节点(Node),包含data和指向下个节点的next 初始化 data当然就是传入的data了,next指向None 添加 分两种情况: 链表为空,那么头节点和尾节点都指向新插入的节点 链表不为空,那么直接在尾部添加即可 遍历 因为只有链表的尾节点的next是指向None的,所以可以根据这点来从头遍历 删除某个节点 删除的时候分3种情况: 头节点,此时更改head指向的节点就好了 尾节点,此时只需将尾节点的前一个节点(prev)的next指向None即可 中间的节点,此时要将此节点的前一个节点的(prev)的next指向后续节点的(Current.next) 搜寻 遍历查找即可 清空链表 将头节点和尾节点都置为None即可 class Node: def __init__(self,data): self.next = None self.data = data class SinglyLinkedList: def __init__(self): self.head = None #头节点 self.tail = None #尾节点 self.size = 0 #链表长度 def append(self,data): node = Node(data) if self.tail: #如果链表不为空 self.tail.next = node self