您的位置:首页 > 其它

有序链表

2016-03-03 17:31 302 查看
public class Link {
public long lData;
public Link next;//reference to next Link

public Link(long lData){
this.lData=lData;
}
public void displayLink(){
System.out.print("{"+lData+"}");
}
}


public class SortedList {
private Link first;

public SortedList(){
first =null;
}

public boolean isEmpty(){
return (first==null);
}

public void insert(long key){
Link newLink =new Link(key);
Link previous=null;
Link current =first;
while(current!=null && key>current.lData){
previous=current;
current=current.next;
}
if(previous==null){
first=newLink;
}
else{
previous.next=newLink;
}
newLink.next=current;
}

public Link remove(){
Link temp = first;
first=first.next;
return temp;
}

public void displayList(){
Link current =first;
while(current!=null){
current.displayLink();
current=current.next;
}
}
}


public class SortedListApp {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SortedList theSortedList = new SortedList();
theSortedList.insert(20);
theSortedList.insert(40);
theSortedList.displayList();
theSortedList.insert(10);
theSortedList.insert(30);
theSortedList.insert(50);
theSortedList.displayList();
theSortedList.remove();
theSortedList.displayList();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  链表 有序链表