zoukankan      html  css  js  c++  java
  • java学习之—链表(3)

    /**
     * 使用链表实现队列
     * Create by Administrator
     * 2018/6/19 0019
     * 下午 4:37
     **/
    public class Link {
    
        public long dData;
        public Link next;
    
        public Link(long d){
            this.dData = d;
        }
    
        public void displayLink(){
            System.out.print(dData + " ");
        }
    }
    
    class FirstLastList{
    
        private Link first;
    
        private Link last;
    
        public FirstLastList(){
            this.first = null;
            this.last = null;
        }
    
        public boolean isEmpty(){
            return first == null;
        }
    
        public void insertLast(long dd){
            Link newLink = new Link(dd);
            if(isEmpty()){
                first = newLink;
            }else {
                last.next = newLink;
            }
            last = newLink;
        }
    
        public long deleteFirst(){
            long temp = first.dData;
            if(first.next == null){
                last = null;
            }
            first = first.next;
            return temp;
        }
    
        public void displayList(){
            Link current = first;
            while (current != null){
                current.displayLink();
                current = current.next;
            }
            System.out.println("");
        }
    }
    
    class LinkQueue{
        private FirstLastList theList;
    
        public LinkQueue(){
            this.theList = new FirstLastList();
        }
        public boolean isEmpty(){
            return theList.isEmpty();
        }
    
        public void insert(long j){
            theList.insertLast(j);
        }
    
        public long remove(){
            return theList.deleteFirst();
        }
    
        public void displayQueue(){
            System.out.print("Queue (front-->rear): ");
            theList.displayList();
        }
    
        public static void main(String[] args) {
            LinkQueue linkQueue = new LinkQueue();
            linkQueue.insert(20);
            linkQueue.insert(40);
    
            linkQueue.displayQueue();
    
            linkQueue.insert(60);
            linkQueue.insert(80);
    
            linkQueue.displayQueue();
    
            linkQueue.remove();
            linkQueue.remove();
    
            linkQueue.displayQueue();
        }
    }
    

      

  • 相关阅读:
    阿里云配置学习
    华为机试练习代码
    微信公众号开发
    给div加滚动条
    Nolia 给CC添加过滤器
    算法理解
    Jquery常用功能
    day 2Linux软件从主机安装到服务器和安装JDK软件
    10月11 一些小的东西
    9月30 json工具类
  • 原文地址:https://www.cnblogs.com/chancy/p/9199391.html
Copyright © 2011-2022 走看看