Java语言创建链表

class Link{
public long dDate;
public Link next;

public Link(long dd){
dDate=dd;
}
// public Link() {
//
// }
//
public void displayLink(){
System.out.print(dDate+" ");
}

}


class LinkList{
private Link first;

public LinkList(){//构造方法初始化表头
first=null;
}

public void insertFirst(long dd){//插入表头
Link newLink =new Link(dd);
newLink.next=first;
first=newLink;
}

public Link find(int key){//查找节点
Link current=first;
while(current.dDate!=key){
if(current.next==null){
return null;//没找到
}
else{
current=current.next;
}
}
return current;
}

public Link remove(int key){//删除节点
Link current =first;
Link previous=first;//记录删除节点的父节点
while(current.dDate!=key){//寻找要删除的节点
if(current.next==null){
return null;//没找到
}
else{
previous=current;
current=current.next;
}
}
if(current==first){//删除头结点
first=first.next;
}
else{//删除非头结点
previous.next=current.next;
}
return current;
}

public void displayList(){//显示链表
System.out.print("List(first-->last):");
Link current =first;
while(current!=null){
current.displayLink();
current=current.next;
}
System.out.println("");
}
}

猜你喜欢

转载自blog.csdn.net/cwh0908/article/details/79333741
今日推荐