创建一条链表,存入1~n。 链表创好后,从头到尾输出每个结点数据域的值。以观察链表建对与否。 然后,依次删除1,2,3,…… 每删一个结点,把链表输出一次。
时间: 2024-09-24 14:10:06 浏览: 40
创建链表并插入1到n的操作可以分为两步:首先,初始化链表结构,然后逐个添加元素并遍历检查。这里是一个简单的Python示例,使用`ListNode`作为链表节点,`head`表示链表的头结点:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def create_linked_list(n):
# 初始化空链表
head = ListNode()
current = head # 当前节点
for i in range(1, n+1):
# 创建新节点并连接到链表
new_node = ListNode(i)
current.next = new_node
current = current.next # 移动到下一个位置
return head # 返回链表头结点
def print_linked_list(head):
current = head
while current is not None:
print(current.val, end=" -> ")
current = current.next
print("None") # 输出最后一个节点之后的空链接
# 初始链表构建
head = create_linked_list(5) # 假设我们创建长度为5的链表
print("初始链表:")
print_linked_list(head)
# 删除节点并打印链表
for i in range(1, 6): # 删除1到5
current = head
for _ in range(i):
if current is not None:
head = current.next
print(f"删除 {i} 后的链表:")
print_linked_list(head)
```
这段代码首先创建了一个包含1到n元素的链表,然后每次删除第一个元素,并打印出删除后的链表状态。请注意,实际操作中可能会有优化删除过程的方法,例如使用双向链表或迭代器,但这取决于具体的需求和编程语言。如果需要了解其他编程语言的实现,只需将上述Python代码替换为你选择的语言版本即可。
阅读全文