单链表的构建和基本操作实现数据结构
时间: 2024-12-14 17:18:01 浏览: 18
单链表是一种线性数据结构,每个节点包含两个部分:存储数据的值和指向下一个节点的指针。以下是单链表的基本构建和一些常见操作的实现:
**构建**:
1. **创建节点**:定义一个`Node`类,包含数据域`data`和指针域`next`。
```java
class Node {
int data;
Node next;
}
```
2. **初始化空链表**:创建一个表示链表头的`null`节点。
```java
Node head = null;
```
**基本操作**:
1. **添加元素到链表头部(prepend)**:
```java
void addAtStart(int value) {
Node newNode = new Node();
newNode.data = value;
newNode.next = head;
head = newNode;
}
```
2. **添加元素到链表尾部(append)**:
```java
void addAtEnd(int value) {
if (head == null) {
head = new Node(value);
return;
}
Node current = head;
while (current.next != null) {
current = current.next;
}
current.next = new Node(value);
}
```
3. **查找元素**:
```java
boolean contains(int value) {
Node current = head;
while (current != null) {
if (current.data == value) {
return true;
}
current = current.next;
}
return false;
}
```
4. **删除元素**:
- 删除指定值的节点(若存在)
```java
void remove(int value) {
if (head == null || head.data != value) return;
Node temp = head;
head = head.next;
temp = null; // 或者可以将temp.next设置为当前头节点,避免内存泄漏
}
```
阅读全文