数据结构和算法

4.有序链表

package link;

public class SortedLink {

 private Link first = null;
 private Link last = null;
 public SortedLink(Link first, Link last) {
  super();
  this.first = first;
  this.last = last;
 }
 
 public SortedLink() {
  super();
  this.first = null;
  this.last = null;
 }
 
 public boolean isEmpty(){
  return first == null;
 }
 
 /**
  * 从小到大排列
  * @param data
  */
 public void insert(int data){
  Link link = new Link(data);
  if(isEmpty()){
   first = link;
   last = link;
  }else{
   Link c = first;
   Link pre = null;
   
   while(c != null && c.iData < data){
    pre = c;
    c = c.next;
    
   }
   if(pre == null && c!= null){//插在链表的头
    first = link;
    link.next = c;
    
   }else if(c == null){//插在链表的尾部
    pre.next = link;
   }else{
    pre.next = link;
    link.next = c;
    
    
   }
  }
  
 }
 
 public void displayList(){
  System.out.println("List (first ---> last):");
  Link d = first;
  while(d != null){
   d.displayLink();
   d = d.next;
  }
  
 }
}

 

package link;

public class SortedLinkApp {

 public static void main(String args[]){
  SortedLink st = new SortedLink();
  st.insert(20);
  st.insert(2);
  st.insert(21);
  st.insert(3);
  st.displayList();
  
  
  
  
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值