双向链表的创建Java
时间: 2023-09-16 14:06:29 浏览: 53
双向链表是一种常见的数据结构,其每个节点都有指向前一个节点和后一个节点的指针,可以支持双向遍历。下面是Java中双向链表的创建过程:
首先,我们需要定义一个节点类,包含数据域和前后指针:
```
public class Node {
int data;
Node prev;
Node next;
}
```
然后,定义一个双向链表类,包含头节点和尾节点:
```
public class DoublyLinkedList {
Node head;
Node tail;
}
```
接下来,实现双向链表的插入方法:
```
public void insert(int data) {
Node newNode = new Node();
newNode.data = data;
if (head == null) {
head = newNode;
tail = newNode;
newNode.prev = null;
newNode.next = null;
} else {
tail.next = newNode;
newNode.prev = tail;
tail = newNode;
tail.next = null;
}
}
```
这个方法会在链表末尾插入一个新的节点。如果链表为空,新节点既是头节点也是尾节点;否则,将新节点插入到尾节点之后,并更新尾节点。
最后,我们可以遍历双向链表:
```
public void display() {
Node current = head;
if (head == null) {
System.out.println("List is empty");
return;
}
while (current != null) {
System.out.print(current.data + " ");
current = current.next;
}
}
```
这个方法会从头节点开始遍历链表,并打印每个节点的数据。需要注意的是,我们可以通过双向指针向前或向后遍历链表。