单链表头插法和尾插法
时间: 2023-11-08 19:06:51 浏览: 116
单链表(头插法,尾插法)
单链表是一种常见的数据结构,它由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。单链表有两种插入方式:头插法和尾插法。
头插法是将新节点插入到链表的头部,即新节点的 next 指针指向原来的头节点,然后将新节点设置为头节点。代码实现如下:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def insertAtHead(head: ListNode, val: int) -> ListNode:
new_node = ListNode(val)
new_node.next = head
return new_node
```
尾插法是将新节点插入到链表的尾部,即找到链表的最后一个节点,将其 next 指针指向新节点。代码实现如下:
```python
def insertAtTail(head: ListNode, val: int) -> ListNode:
new_node = ListNode(val)
if not head:
return new_node
cur = head
while cur.next:
cur = cur.next
cur.next = new_node
return head
```
阅读全文