题解 | #从单向链表中删除指定值的节点#
从单向链表中删除指定值的节点
https://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f
完全按照链表的形式来做:
class Node(): def __init__(self, val): self.val = val self.next = None class linkList(): def __init__(self, node=None): self.head = node def travel(self): if not self.head: return None cur = self.head while cur: print(cur.val, end=' ') cur = cur.next def insert(self, val, k): cur = self.head while cur.val != k: cur = cur.next node = Node(val) node.next = cur.next cur.next = node def delete(self, val): cur = self.head pre = None while cur.val != val: pre = cur cur = cur.next if not pre: self.head = self.head.next else: pre.next = cur.next s = input().split() N = s.pop(0) node = Node(s.pop(0)) d = s.pop() link = linkList(node) while s: val = s.pop(0) k = s.pop(0) link.insert(val, k) link.delete(d) link.travel()