线性表的链式存储结构之单链表结点类的实现_Java
2011-08-13 14:47
645 查看
在前几次的博文中我提到了——线性表的顺序存储结构之顺序表类的实现,这几次我们准备实现线性表的链式存储结构,不过之前需要一些预备知识,那就是本文了。
由于单链表有一个个结点链接而成,以下定义单链表及地点类。
在C/C++语言中,采用指针类型存储地址来实现链式存储结构。Java语言不支持指针类型,提供引用方式保存包括地址在内的结构化信息。引用是比指针更健壮、更安全的链接方式,它不仅实现了指针的所有功能,而且避免了因指针使用不当产生的不安全性。因此,采用Java语言的引用类型可以很好地实现链式存储结构。
单链表结点类Node声明如下:
Node<E>类有两个成员变量,data表示结点的数据域,保存数据元素本身,数据类型是E;next表示结点的地址域,保存后继结点的地址。Node类中成员变量next的数据类型是Node类自己,Node类是“自引用的类”。所谓自引用的类(self-referential calss),是指一个类声明包含一个引用当前类的对象的成员变量。
建立并链接结点的语句如下:
单链表的头指针head也是一个结点引用,声明如下:
当head ==null时,表示空单链表。
在下一篇博文中我将和大家讨论有关单链表类的实现问题。敬请期待。
由于单链表有一个个结点链接而成,以下定义单链表及地点类。
在C/C++语言中,采用指针类型存储地址来实现链式存储结构。Java语言不支持指针类型,提供引用方式保存包括地址在内的结构化信息。引用是比指针更健壮、更安全的链接方式,它不仅实现了指针的所有功能,而且避免了因指针使用不当产生的不安全性。因此,采用Java语言的引用类型可以很好地实现链式存储结构。
单链表结点类Node声明如下:
package dataStructure.linearList; public class Node<E> { public E Data; public Node<E> Next; public Node(E data,Node<E> next) { this.Data = data; this.Next = next; } public Node(E Data) { this(Data,null); } public Node() { this(null,null); } }
Node<E>类有两个成员变量,data表示结点的数据域,保存数据元素本身,数据类型是E;next表示结点的地址域,保存后继结点的地址。Node类中成员变量next的数据类型是Node类自己,Node类是“自引用的类”。所谓自引用的类(self-referential calss),是指一个类声明包含一个引用当前类的对象的成员变量。
建立并链接结点的语句如下:
import dataStructure.linearList.Node; public class MainForm { public static void main(String args[]) { Node<String> CC =new Node<String>("C"); Node<String> BB =new Node<String>("B",CC); Node<String> AA =new Node<String>("A",BB); System.out.println(AA.Data); System.out.println(AA.Next.Data); System.out.println(AA.Next.Next.Data); } }
单链表的头指针head也是一个结点引用,声明如下:
Node<E> head = null;
当head ==null时,表示空单链表。
在下一篇博文中我将和大家讨论有关单链表类的实现问题。敬请期待。
相关文章推荐
- 线性表的链式存储结构之单链表结点类的实现_Java
- 线性表的链式存储结构之单链表类的实现之补充_Java
- 线性表的链式存储结构之单链表类的实现_Java
- 线性表的链式存储结构之单链表类的实现_Java
- java线性表的存储结构及其代码实现
- 数据结构之线性表代码实现顺序存储,链式存储,静态链表(选自大话数据结构)
- JAVA数据结构之线性表的链式存储结构——循环链表
- 线性表的Java实现--链式存储(单向链表)
- JAVA数据结构 线性表的链式存储及其实现
- 线性结构--->栈的链式存储实现
- 数据结构(五)---栈的链式存储的实现---java版
- JAVA数据结构之线性表的链式存储结构——双向链表
- 线性表的Java实现--链式存储(双向链表)
- 线性结构的顺序存储和链式存储的实现代码(二)
- JAVA数据结构之线性表的链式存储结构——单链表
- Java版线性表的链式存储和实现
- 线性表的Java实现--链式存储(单向链表)
- JAVA实现队列 队列的链式存储结构及操作
- 数据结构:线性表的链式存储(双向链表)--Java实现
- java实现的链式线性表结构