创建并初始化一个单链表,存入数据1-10,取出第五个节点的值,查找值为9的结点的值
时间: 2024-09-20 07:12:16 浏览: 40
创建单链表并初始化的过程通常涉及以下几个步骤:
首先,你需要定义一个链表节点的数据结构,包含一个元素值和指向下一个节点的指针:
```python
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
```
然后,你可以通过迭代的方式创建一个包含1到10数字的链表,并将它们依次插入节点:
```python
def create_linked_list():
head = Node(1) # 初始化头节点
current = head # 当前节点
for i in range(2, 11): # 从2开始因为索引从0开始计数
new_node = Node(i)
current.next = new_node
current = current.next
return head
```
现在,链表已经创建好了,取第五个节点(即索引4,因为Python索引从0开始)的值可以这样做:
```python
def get_fifth_node(head):
if head is not None and head.next is not None: # 检查列表长度大于1
for _ in range(4): # 遍历四次得到第五个节点
head = head.next
return head.data
else:
return None # 如果链表太短,返回None
fifth_value = get_fifth_node(create_linked_list())
print("第五个节点的值:", fifth_value)
```
为了查找值为9的节点,你需要遍历整个链表:
```python
def find_node_with_value(head, value):
while head is not None:
if head.data == value:
return head.data
head = head.next
return None # 如果找不到,返回None
value_9 = find_node_with_value(create_linked_list(), 9)
if value_9 is not None:
print("值为9的节点值:", value_9)
else:
print("没有找到值为9的节点.")
```
阅读全文