循环双链表-JAVA语言实现
程序员文章站
2024-03-22 11:38:10
...
定义循环双链表类。
package DoubleLinkList;
public class DoubleNode {
DoubleNode pre = this;
DoubleNode next = this;
int data;
//创建构造函数
public DoubleNode(int data) {
this.data = data;
}
//增加节点
public void insertNode(DoubleNode node) {
DoubleNode nextNext = next;
this.next = node;
node.pre = this;
node.next = nextNext;
nextNext.pre = node;
}
//获得下一个节点
public DoubleNode nextNode() {
return this.next;
}
//获得上一个节点
public DoubleNode preNode() {
return this.pre;
}
//获取数据
public int getData() {
return this.data;
}
}
测试程序,测试上面的函数。
package DoubleLinkList;
public class TestDoubleNode {
public static void main(String[] args) {
// TODO Auto-generated method stub
DoubleNode n1 = new DoubleNode(1);
DoubleNode n2 = new DoubleNode(2);
DoubleNode n3 = new DoubleNode(3);
DoubleNode n4 = new DoubleNode(4);
DoubleNode n5 = new DoubleNode(5);
n1.insertNode(n2);
n2.insertNode(n3);
n3.insertNode(n4);
n4.insertNode(n5);
System.out.println(n2.preNode().getData());
System.out.println(n2.getData());
System.out.println(n2.nextNode().getData());
}
}
上一篇: 算法提高 矩阵转置