用 while 循环实现单链表头节点后插入元素
时间: 2024-10-07 13:02:19 浏览: 7
在使用while循环实现单链表头部插入元素时,首先需要创建一个新的节点,并将它设置为当前链表的头结点。假设我们有一个指向当前头结点的指针`current`,以及新插入值`value`,步骤如下:
1. 创建新的节点`newNode`,并将其`next`属性设为`null`,因为我们要把它插入到链表的开头。
2. 如果链表为空(即`current`为`null`),那么直接让`newNode`成为新的头结点,即`head = newNode`。
3. 否则,进入while循环:
a. 将`current`指针更新为`current.next`,以便遍历到下一个结点。
b. 当`current`变为`null`时,说明已经到达了链表的末尾,这时将`newNode`设为`current`的前驱,即`current = newNode`。
4. 然后跳出循环,新节点成为了新的头结点。
这里是伪代码示例:
```python
class Node:
def __init__(self, value):
self.value = value
self.next = None
def insert_at_head(head, value):
if head is None:
newNode = Node(value)
head = newNode
else:
newNode = Node(value)
current = head
while current.next is not None:
current = current.next
current.next = newNode
return head
```