1.以节点方式存储
2.每个节点包含data域,next域(指向下一个节点)
3.不是连续存储的
4.分为带头结点和没有头结点的链表
带头结点链表
注意其中的头结点是不会存放任何数据的
结点定义:
class Node{
int no;
String name;
String nickname;
Node next;//指向下一个结点
}
//可以重写toString方法便于输出
有了结点的定义之后,为了遍历查询方便,我们还需要定义一个包含结点链接关系的表。
class LinkList{
Node FisNode(0,"");//表示头指针,作为遍历链表查询的辅助工具
Node tem = FisNode;
public void add(Node n1) {//寻找链表结点中最后的结点
while(true) {
if(tem.next == null) {
break;//循环寻找该链表的末指针
}
tem = tem.next;
}
tem.next = n1;
}
}
class Node{
int no;
String name;
Node next;//指向该结点下一个结点的指针
public Node(int no,String name) {
this.name = name;
this.no = no;
this.next = null;
}