写出下面代码、数据结构链表的初始化 插入删除操作
时间: 2024-10-09 19:15:05 浏览: 17
链表是一种常见的线性数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。以下是链表的基本初始化、插入和删除操作的简单介绍:
**初始化**:
链表通常有多种方式初始化,这里以单向链表为例,我们可以创建一个头结点(表示第一个元素),初始为空:
```python
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
# 初始化空链表
head = Node()
```
**插入操作**:
1. 在链表头部插入:
```python
new_node = Node(new_data)
new_node.next = head
head = new_node
```
2. 在指定位置插入:
```python
def insert_after(node, data):
new_node = Node(data)
new_node.next = node.next
node.next = new_node
```
**删除操作**:
1. 删除头节点:
```python
if head is not None:
head = head.next
```
2. 删除特定值的节点(遍历查找并移除):
```python
def delete_node(head, key):
current = head
while current:
if current.data == key:
if current.next:
current.next = current.next.next
else:
# 如果要删除的是尾节点
if not current.next:
head = None
else:
previous.next = None
break
previous = current
current = current.next
```
以上代码示例是用Python语言写的,其他编程语言如C++或Java也有相似的实现。