zoukankan      html  css  js  c++  java
  • Java数据结构——双端链表

    //=================================================
    // File Name       :	FirstLastList_demo
    //------------------------------------------------------------------------------
    // Author          :	Common
    
    //类名:FirstLastList
    //属性:
    //方法:
    class FirstLastList{
    	private Link first;
    	private Link last;
    	
    	public FirstLastList() {			//构造函数
    		this.first = null;
    		this.last = null;
    	}
    	
    	public boolean isEmpty(){
    		return (first == null);
    	}
    	
    	public void insertFirst(int id,double dd){		//从链表的头开始插入
    		Link newLink = new Link(id,dd);
    		if(isEmpty()){
    			last = newLink;				//不用改变first
    		}
    		newLink.next = first;
    		first = newLink;
    	}
    	
    	public void insertLast(int id,double dd){		//从链表的尾开始插入
    		Link newLink = new Link(id,dd);
    		if(isEmpty()){
    			first = newLink;			//不用改变last
    		}else{
    			last.next = newLink;		//在last后面添加新元素,并修改last的位置
    		}
    		last = newLink;						//注意:只有一个元素的时候,插入要把last也赋为newLink
    	}
    	
    	public Link deleteFirst(){
    		Link temp = first;		//暂存first
    		if(first.next == null){		//如果只有一个元素,把last也赋为null
    			last = null;
    		}
    		first = first.next;			//把next设为first
    		return temp;				//返回原来的first
    	}
    	
    	public void displayList(){
    		System.out.println("List(first-->last):");
    		Link current = first;			//用于不断改变位置实现遍历
    		while(current != null){
    			current.displayLink();
    			current = current.next;
    		}
    	}
    	
    }
    
    //主类
    //Function        : 	FirstLastList_demo
    public class FirstLastList_demo {
    
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		FirstLastList theList = new FirstLastList();
    		theList.insertFirst(11, 11.1);
    		theList.insertFirst(22, 22.2);
    		theList.insertFirst(33, 33.3);
    		theList.insertFirst(44, 44.4);
    		theList.insertFirst(55, 55.5);
    		theList.displayList();
    		
    		theList.deleteFirst();
    		theList.deleteFirst();
    		theList.deleteFirst();
    		theList.displayList();
    		
    	}
    
    }
    

  • 相关阅读:
    JDK问题--linux下java unrecognized class file version错误的解决
    XP oracle32位客户端安装找不到orandce11.dll.dbl
    Oracle的安装问题
    xhost和DISPLAY
    linux下访问windows的共享
    windows域与工作组概念
    当页面加载完成时,JQ触发添加页面的元素的事件触发不了。。
    工厂模式Assembly.Load(path).CreateInstance 反射出错解决办法
    MVC之联动学习
    SQL2008将服务器的数据库表数据插入到本地数据库
  • 原文地址:https://www.cnblogs.com/tonglin0325/p/5337845.html
Copyright © 2011-2022 走看看