数据结构:链表(六)
单链表的操作
remove(item) 删除节点
思路:1、首先这需要遍历,需要找到这个元素
2、找到这个元素节点后,让前一个节点指向后一个节点就可以,用到两个指针,注意第一个元素是要删除的元素,要让头节点指向下一个节点
class SingleLinkList(object):
def __init__(self):
self._head=None
def remove(self,item):
cur=self._head
pre=None
while cur !=None:
if cur.item == item:
if cur==self.head: #当一开始头节点指向要删除的元素,直接让头节点指向下一个节点
self._head=cur.next
else:
pre.next=cur.next #一般情况下,让前一个节点指向下一个节点,是最后一个元素也满足条件
break #删除之后跳出循环
else: #循环移动
pre=cur
cur=cur.next

浙公网安备 33010602011771号