博客
关于我
数组、链表实现队列
阅读量:199 次
发布时间:2019-02-28

本文共 1724 字,大约阅读时间需要 5 分钟。

package task2;/** * 功能:数组、链表实现队列 * Created by liumao 2019/8/7 0007 **/public class Queue
{ public class ArrayQueue { private Object[] arrQueue; private int front; private int rear; public ArrayQueue() { } public ArrayQueue(int size) { arrQueue = new Object[size]; front = 0; rear = 0; } public boolean enQueue(Object obj) { if ((rear+1)%arrQueue.length==front){ return false; } arrQueue[rear] = obj; rear = (rear+1)%arrQueue.length; return true; } public Object deQueue() { if (rear==front){ return null; } Object obj = arrQueue[front]; front = (front+1)%arrQueue.length; return obj; } } public class LinkedQueue { Node rear; Node front; private int size; public LinkedQueue(int size) { this.size = size; this.rear = null; this.front = null; } public class Node{ T t; Node next; } public boolean isEmpty(){ return rear == null; } public void enQueue(T data) { Node oldLast = front; front = new Node(); front.next = null; if (size==0){ front=rear; }else { oldLast = front; } size ++; } public T deQueue() { T t = rear.t; rear = front.next; if (size==0) front=null; size--; return t; } }}

转载地址:http://afps.baihongyu.com/

你可能感兴趣的文章
MySQL5.7.19-win64安装启动
查看>>
mysql5.7性能调优my.ini
查看>>
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqlreport分析工具详解
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>