1、实现代码

public class SeqQueue {
private final int MaxSize = 8;
private int rear; //队尾指针
private int front; //队头指针
private int size; //计数器
private Object seqQueueArray[]; /**
* 初始化
*/
public SeqQueue() {
this.size = 0;
this.front = 0;
this.rear = 0;
seqQueueArray = new Object[MaxSize];
} public boolean isEmpty(SeqQueue seqQueue) {
if (seqQueue.size == 0){
return true;
}
return false;
} public boolean isFull(SeqQueue seqQueue) {
if (seqQueue.size > 0 && seqQueue.rear == seqQueue.front){
return true;
}
return false;
} public void queueAppend(SeqQueue seqQueue,Object element) {
if (isFull(seqQueue)){
System.out.println("已满,无法插入");
return;
}
System.out.println(element+"元素入队列");
seqQueue.seqQueueArray[seqQueue.rear] = element;
seqQueue.rear = (seqQueue.rear +1 )%MaxSize;
seqQueue.size++;
} public void queueDelete(SeqQueue seqQueue) {
if (isEmpty(seqQueue)){
System.out.println("已空,无法出队列");
return;
}
System.out.print(seqQueue.seqQueueArray[seqQueue.front]+" ");
seqQueue.front = (seqQueue.front +1)%MaxSize;
seqQueue.size--;
} public void getFront(SeqQueue seqQueue) {
if (isEmpty(seqQueue)){
System.out.println("已空,无法获取队列头");
return;
}
System.out.println("队头元素: "+ seqQueue.seqQueueArray[seqQueue.rear]);
} public static void main(String[] args) {
SeqQueue seqQueue = new SeqQueue();
seqQueue.getFront(seqQueue);
seqQueue.queueDelete(seqQueue); for (int i = 0; i < 9; i++) {
seqQueue.queueAppend(seqQueue,i);
}
System.out.println("===========");
seqQueue.queueDelete(seqQueue);
System.out.println("==========="); int number = seqQueue.size;
for (int i = 0; i < number; i++) {
seqQueue.queueDelete(seqQueue);
}
System.out.println();
seqQueue.queueDelete(seqQueue); }
}

2、实现结果

已空,无法获取队列头
已空,无法出队列
0元素入队列
1元素入队列
2元素入队列
3元素入队列
4元素入队列
5元素入队列
6元素入队列
7元素入队列
已满,无法插入
===========
0 ===========
1 2 3 4 5 6 7
已空,无法出队列

5.1、顺序队列(java实现)的更多相关文章

  1. 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列

    一.队列的概念: 队列(简称作队,Queue)也是一种特殊的线性表,队列的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置插入和删除,而队列只允许在其一端进行插入操作在其 ...

  2. java 实现简单的顺序队列

    package com.my; import java.util.Arrays; /** * 顺序队列 * @author wanjn * */ public class ArrayQueue { p ...

  3. java代码实现顺序队列

    java实现顺序队列 package xianxinTable; import java.util.ArrayList; import java.util.Iterator; import com.s ...

  4. 数据结构----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列

    一.队列的概念: 队列(简称作队,Queue)也是一种特殊的线性表,队列的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置插入和删除,而队列只允许在其一端进行插入操作在其 ...

  5. 用数组实现队列(顺序队列&循环队列)

    用数组实现队列(顺序队列&循环队列) 顺序队列 ️ 队列(先进先出) 几个问题: 队列方法:入队.出队 队列的存储:即队首队尾两个指针, 扩容:如果队列容量不够了,应该扩容,如果队尾没有位置了 ...

  6. 顺序队列C/C++实现

    #include <iostream> using namespace std; const int MAXSIZE = 1000; typedef int ELEMTYPE; const ...

  7. 顺序队列之C++实现

    下面介绍下用C++实现的顺序队列,在VC6下调试通过. 1.文件组织形式 2.sq.h顺序队列类的说明 #ifndef _SQ_H_ #define _SQ_H_ typedef int dataTy ...

  8. Javascript数据结构与算法--队列(顺序队列、优先队列、循环队列)的实现与用法

    前言 队列和栈非常类似,前面已经讲过了栈的实现与用法,现在我们来说说队列. 队列介绍 队列遵循FIFO(First In First Out,先进先出)原则的一组有序的项. 队列是一种特殊的线性表,特 ...

  9. 队列java实现

    队列是一种线性数据结构,是一种运算受限的线性表,只允许在队尾插入,在队头删除.运算规则是先进先出.恰好和栈相反.栈是先进后出.因为栈只在栈顶做删除和插入. 队列按照存储结构可以分为顺序队列和链式队列. ...

  10. 队列的理解和实现(一) ----- 循环队列(java实现)

    什么是队列 我们都知道栈是先进后出的一种线性表,与之相反的是,队列是一种先进先出的线性表.它只允许在表的一端进行插入,而在另一端进行删除.举个例子来说,在生活中我们买东西需要进行排队,最先排队的可以最 ...

随机推荐

  1. SAP无法激活表问题

    因为修改了表结构导致无法激活,刚开始以为是数据库没有调整,然后试着运行SE14,发现还是报错 这个时候就要看看数据库服务器时候正常,输入事务码ST04,查看概览,发现磁盘已满 登录HANA Studi ...

  2. Mysql: 图解 inner join、left join、right join、full outer join、union、union all的区别

    转载来源 对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚. ...

  3. Netbeans courier new 乱码问题

    Netbeans 默认的字体 monospaced,显示英文的单引号及字体非常的不好看,在网上查了下资料可以变得很好看. 1.仍然保持默认字体 monospaced 2.在Netbeans 的安装目  ...

  4. git码云的使用基础(为了以后更好的协同操作)

    git手册 安装教程 windows 不需要什么操作点点点就好 设置一个文件夹当成本地仓库 第一次上传 git init# 创建一个本地的仓库 git add. 当前文件夹下所有内容# 添加到暂存区 ...

  5. RuntimeError: one of the variables needed for gradient computation has been modified by an inplace

    vgg里面的 ReLU默认的参数inplace=True 当我们调用vgg结构的时候注意 要将inplace改成 False 不然会报错 RuntimeError: one of the variab ...

  6. 源码分析Retrofit请求流程

    Retrofit 是 square 公司的另一款广泛流行的网络请求框架.前面的一篇文章<源码分析OKHttp执行过程>已经对 OkHttp 网络请求框架有一个大概的了解.今天同样地对 Re ...

  7. hive concat_ws源代码

    其他相关源码可以到以下链接查看: https://github.com/apache/hive/tree/master/ql/src/java/org/apache/hadoop/hive/ql/ud ...

  8. Xshell登陆服务器及Linux的简单命令

    在之前的推文中,我已经给出了怎样利用Git登陆服务器”你在用xshell,putty登陆?推荐一个小工具(Git)登陆“其中包括xshell登陆服务器.今天讲讲常见的Linux命令,这个和之前将的利用 ...

  9. Docker学习总结(七)--Docker私有仓库

    创建私有仓库 1) 拉取私有仓库镜像 docker pull registry 2)启动私有仓库容器 docker run -di --name-registry -p 5000:5000 regis ...

  10. antd模糊搜索和远程数据的结合

    //用到此方法的情景  先根据input框中的姓名模糊搜索出客户名称,当选中客户名称之后,获取ID ,根据客户的ID,去搜索数据列表. 防抖方法 let timeout; let currentVal ...