Python定义函数,能在单向列表结构上删除指定位置的元素,并返回一个单向链表和被删除元素组成的元组
时间: 2024-10-21 14:15:11 浏览: 25
在Python中,你可以定义一个函数来实现这个功能。首先,你需要创建一个简单的单向链表节点类`ListNode`,然后定义一个函数`delete_node_at_position`来进行操作。这里是一个简化的实现示例:
```python
class ListNode:
def __init__(self, value=0, next=None):
self.value = value
self.next = next
def delete_node_at_position(lst, position):
if not lst or position < 0 or position >= len(lst):
raise IndexError("Position out of range")
# 如果要删除的是第一个节点
if position == 0:
deleted_value = lst.value
lst = lst.next
else:
current = lst
for _ in range(position - 1):
current = current.next
deleted_value = current.next.value
current.next = current.next.next
return (lst, deleted_value)
# 示例
lst = ListNode(1, ListNode(2, ListNode(3)))
deleted_item = delete_node_at_position(lst, 1)
print("Updated list:", [node.value for node in lst])
print("Deleted item:", deleted_item[1])
#
阅读全文