1.创建节点类:public class Link {//节点数据private long data;//下一结点private Link next;public Link(long d){this.data = d;}//显示结点数据public void displayLink(){System.out.println(data + " ");}public long getData() {return data;}public void setData(long data) {this.data = data;}public
Link getNext() {return next;}public void setNext(Link next) {this.next = next;}2.创建双端链表:public class FirstLastList {private Link first;private Link last;public FirstLastList(){first = null;last =null;}public boolean isEmpty(){return (first == null);}/** *
链表尾部插入 * @param d */public void insertLast(long d){Link newLink = new Link(d);if(isEmpty()){first = newLink;}else{last.setNext(newLink);}last = newLink;}/** * 删除头部元素 * @return 被删除的数据 */public long deleteFirst(){Link temp = first;if(first.getNext() == null){last
= null;}first = first.getNext();return temp.getData();}public void displayList(){Link current = first;while(current != null){current.displayLink();current = current.getNext();}System.out.println(" ");}}3.创建队列public class LinkQuene {private FirstLastList fll;public
LinkQuene(){fll = new FirstLastList();}public boolean isEmpty(){return fll.isEmpty();}public void insert(long dd){fll.insertLast(dd);}public long remove(){return fll.deleteFirst();}public void displayQuene(){System.out.println("Quene(front-->rear)");fll.displayList();}}队列应用:public
class LinkQueneApp {public static void main(String[] args) {LinkQuene linkQuene = new LinkQuene();linkQuene.insert(10);linkQuene.insert(20);linkQuene.displayQuene();linkQuene.insert(30);linkQuene.insert(40);linkQuene.displayQuene();linkQuene.remove();linkQuene.remove();linkQuene.displayQuene();}}
双端链表实现队列
最新推荐文章于 2023-05-25 12:19:00 发布