(1)初始化单链表h。 (2)依次采用尾插法插入。 (3)输出单链表h。 (4)输出单链表h的长度。 (5)判断单链表h是否为空。 (6)输出单链表h的第3个元素。 (7)输出元素a的位置。 (8)在第4个元素位置上插入f元素。 (9)输出单链表h。 (10)删除单链表h的第3个元素。 (11)输出单链表h。 (12)释放单链表h
时间: 2023-06-02 08:02:19 浏览: 100
单链表的初始化、插入、删除、查找
1. 初始化单链表h
h = None
2. 依次采用尾插法插入
a = Node('a')
b = Node('b')
c = Node('c')
h = a
a.next = b
b.next = c
3. 输出单链表h
print("单链表h:", end=" ")
p = h
while p:
print(p.data, end=" ")
p = p.next
print()
4. 输出单链表h的长度
count = 0
p = h
while p:
count += 1
p = p.next
print("单链表h的长度为:", count)
5. 判断单链表h是否为空
if h:
print("单链表h不为空")
else:
print("单链表h为空")
6. 输出单链表h的第3个元素
p = h
index = 1
while p and index < 3:
p = p.next
index += 1
if p:
print("单链表h的第3个元素为:", p.data)
else:
print("单链表h的长度不足3,无法输出第3个元素")
7. 输出元素a的位置
p = h
index = 1
while p and p.data != 'a':
p = p.next
index += 1
if p:
print("元素a在单链表h中的位置为:", index)
else:
print("元素a不在单链表h中")
8. 在第4个元素位置上插入f元素
f = Node('f')
p = h
index = 1
while p and index < 4:
p = p.next
index += 1
if p:
f.next = p.next
p.next = f
print("在第4个元素位置上插入f元素后,单链表h为:", end=" ")
p = h
while p:
print(p.data, end=" ")
p = p.next
print()
else:
print("单链表h长度不足4,无法插入f元素")
9. 输出单链表h
print("单链表h:", end=" ")
p = h
while p:
print(p.data, end=" ")
p = p.next
print()
10. 删除单链表h的第3个元素
p = h
index = 1
while p and index < 3:
pre = p
p = p.next
index += 1
if p:
pre.next = p.next
del p
print("删除单链表h的第3个元素后,单链表h为:", end=" ")
p = h
while p:
print(p.data, end=" ")
p = p.next
print()
else:
print("单链表h的长度不足3,无法删除第3个元素")
11. 输出单链表h
print("单链表h:", end=" ")
p = h
while p:
print(p.data, end=" ")
p = p.next
print()
12. 释放单链表h
p = h
while p:
q = p.next
del p
p = q
print("单链表h已被释放")
阅读全文