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

    /**
     * 使用链表实现队列
     * 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 SortList{
    
        private Link first;
    
        public SortList(){
            this.first = null;
        }
    
        public boolean isEmpty(){
            return first == null;
        }
    
        public void insertLast(long key){
            Link newLink = new Link(key);
            Link previous = null;
            Link current = first;
    
            while (current != null && key > current.dData){
                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;
            }
            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) {
            SortList sortList = new SortList();
            sortList.insertLast(40);
            sortList.insertLast(20);
    
            sortList.displayList();
    
            sortList.insertLast(10);
            sortList.insertLast(30);
            sortList.insertLast(50);
    
            sortList.displayList();
    
            sortList.remove();
    
            sortList.displayList();
    
        }
    }
    

      

  • 相关阅读:
    windows 7 codepage id name 名称
    最大团
    三分的多种写法及对应的精度 三分套三分原理
    AC自动机
    c++ queue
    lca 欧拉序+rmq(st) 欧拉序+rmq(线段树) 离线dfs 倍增
    node *p,*q
    dfs序和欧拉序
    P3861 8月月赛A
    洛谷P3862 8月月赛B
  • 原文地址:https://www.cnblogs.com/chancy/p/9199555.html
Copyright © 2011-2022 走看看