基于数组和节点方式的队列的实现
来源:互联网 发布:电子书资源知乎 编辑:程序博客网 时间:2024/05/21 18:38
基于数组方式的队列的实现
package com.study.link;/** * 基于数组的队列 * @author Administrator * */public class ArrayQueue {private Node[] nodeArray;private int last;public ArrayQueue(int length){nodeArray = new Node[length];}/** * 入队 * @param n */public void enqueue(Node node){nodeArray[last] = node;last++;}/** * 出队 * @return */public Node denqueue(){if(last>0){last--;Node node = nodeArray[last];return node;}return null;}public static void main(String[] args) {ArrayQueue queue = new ArrayQueue(10);queue.enqueue(new Node(1));queue.enqueue(new Node(2));queue.enqueue(new Node(3));queue.enqueue(new Node(4));queue.enqueue(new Node(5));while(queue.last>0){System.out.println(queue.denqueue().getValue());}}}
基于节点
package com.study.link;/** * 基于节点的方式实现队列 * 先进先出 * @author Administrator * */public class NodeQueue {private Node first;private Node last;/** * 入队 * @param n */public void enqueue(Node node){if(first==null){first = node;last = node;}else{last.setNext(node);last = node;}}/** * 出队 * @return */public Node denqueue(){if(first == null){ return null; }else{ Node temp = new Node(first.getValue()); first = first.getNext(); if(last == temp){ last = first; } return temp; } }public static void main(String[] args) {NodeQueue queue = new NodeQueue();queue.enqueue(new Node(1));queue.enqueue(new Node(2));queue.enqueue(new Node(3));queue.enqueue(new Node(4));queue.enqueue(new Node(5));queue.enqueue(new Node(6));queue.enqueue(new Node(7));queue.enqueue(new Node(8));queue.enqueue(new Node(9));while(queue.first!=null){ System.out.println(queue.denqueue().getValue()); } }}
package com.study.link;/** * 链表节点 * 每个链表都有本身值和指向下一个节点的链接 * @author Administrator * */public class Node {private Object value;private Node next;public Node(Object value){this.value = value;next = null;}public Object getValue() {return value;}public void setValue(Object value) {this.value = value;}public Node getNext() {return next;}public void setNext(Node next) {this.next = next;}}
- 基于数组和节点方式的队列的实现
- 基于数组的队列实现
- 基于数组的队列实现
- 采用数组和节点方式实现的堆栈
- 基于数组和链表的队列实现
- 基于数组的队列实现(C语言)
- java 基于数组实现的队列
- 简单队列的实现(基于数组)
- 基于动态数组的队列实现
- CPP实现队列,(数组的方式)
- 队列的实现(数组方式)
- 队列(一)——队列的数组实现方式
- 笔记七:基于数组的循环队列的实现
- 简单队列和循环队列的实现--数组实现
- 队列基于链表和数组的实现方法(java)
- 基于数组的循环队列
- 基于数组的循环队列
- 基于数组的优先级队列
- C语言和设计模式(装饰模式) 【文章都是来自网络,只要自己吸取了就是自己的】
- 网络不通,解决方案
- windows7下使用Gavotte的RAMDisk
- linux高端内存管理之非连续内存区(描述)
- 基于MyEclipse8.5注解方式整合SSH框架
- 基于数组和节点方式的队列的实现
- Linux资源
- JavaScript Array sort bug in chrome v8
- 新一代的数据库备份解决方案--Oracle数据库
- git服务器搭建
- 纵向一级列表
- poj 2762 Going from u to v or from v to u?
- 编写超酷jQuery插件的10点建议
- 打造自己的vim界面--用winmanager合并显示NERDTree和TagList