循环链表,可以用于管理计算机的计算资源,还可以用于实现栈和队列。
一种存储高效的双向链表:
《Sinha》期刊发表了一个具有插入、遍历和删除操作的双向链表抽象数据类型(ADT)的一种实现方式。该方式局域指针的差运算。每个节点仅使用一个指针域来双向遍历链表。
传统的双向链表的定义:
class DDLNode {
private int data;
private DDLNode next;
private DDLNode previous;
...
}
新工具的双链表定义:
public class ListNode {
private int data;
private ListNode ptrdiff;
.......
}
ptrdiff 指针字段包含后继结点的地址与前驱节点的地址差(通过异或运算来实现)。