python链表的删除
时间: 2023-11-10 16:05:32 浏览: 113
在Python中,可以使用链表的数据结构来存储和操作元素。想要删除链表中的一个节点,需要找到目标节点,并修改前一个节点的指针,使其指向目标节点的下一个节点。
下面是一个示例代码,演示如何删除链表中的一个节点:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def deleteNode(head, target):
# 如果待删除的节点是头节点
if head.val == target:
return head.next
# 遍历链表,找到待删除节点的前一个节点
prev = head
curr = head.next
while curr and curr.val != target:
prev = curr
curr = curr.next
# 删除目标节点
if curr:
prev.next = curr.next
return head
```
以上代码定义了一个`ListNode`类来表示链表中的节点,然后定义了`deleteNode`函数来删除目标节点。你可以调用该函数传入链表头节点和要删除的目标值。如果待删除的节点是头节点,函数将返回删除后的链表头节点;否则,返回原链表头节点。
注意:这只是一个简单的示例,实际应用中可能需要考虑更多情况,如处理空链表或删除最后一个节点等。
阅读全文