java队列模拟_Java模拟队列

2023-11-16

用Java模拟队列的出队和进队

1.[代码][Java]代码

package com.stackANDqueue;

import java.io.DataInputStream;

import java.io.IOException;

/*

* 循环队列的入队和出队

*/

public class Queue {

static int MAX = 20;

static String[] item = new String[MAX];

static int front, rear;

public Queue() {

// TODO Auto-generated constructor stub

front = 0;

rear = -1;

}

/**

* 按任何一键立刻执行Fuction

*/

public static void anyKey_f(){

char tChar;

System.out.println(" Press any key to contunue...");

try {

tChar = (char) System.in.read();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void enqueue_f(){//入队函数

DataInputStream in = new DataInputStream(System.in);

if(rear >= MAX-1) System.out.println("\n Queue is full ! \n");

else{

rear ++;

System.out.println(" \n Please enter item to insert ! \n");

System.out.flush();

try {

item[rear] = in.readLine();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

System.out.println("");

}

public static void dequeue_f(){//出队函数

if(front > rear) System.out.println("\n No item ,Queue is empty ! \n");

else{

System.out.print("\n Item " + item[front] + " is deleted ! \n");

front ++;

}

System.out.println("");

}

public static void list_f(){

DataInputStream in = new DataInputStream(System.in);

int count=0, i=0;

if(front > rear) System.out.print("\n No item , Queue is empty ! \n\n");

else{

System.out.print("\n ITEM \n");

System.out.flush();

for(i = front; i<= rear; i++){

System.out.print("");

System.out.print(item[i] + "\n");

count ++;

if(count % 20 ==0) anyKey_f();

}

System.out.print(" --------------------\n");

System.out.print(" Total item : "+count + "\n\n");

anyKey_f();

System.out.println("");

}

}

@SuppressWarnings("deprecation")

public static void main(String args[]){

DataInputStream in = new DataInputStream(System.in);

String op = "";

int option = 0;

Queue obj = new Queue();

do{

System.out.println("****************** Stack Program *******************");

System.out.println(" ");

System.out.println(" <1> Insert Node ");

System.out.println(" <2> Delete Node ");

System.out.println(" <3> List Node ");

System.out.println(" <4> Exit ! ");

System.out.println(" ");

System.out.println("****************************************************");

System.out.print("\n Choice : ");

System.out.flush();

op = "";

try {

op = in.readLine();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

option = 0;

try{

option = Integer.valueOf(op).intValue();

}catch(NumberFormatException e){

System.out.println("\n Please input (1,2,3,4).....");

System.out.println("\n\n\n");

}

switch(option){

case 1:

enqueue_f();

break;

case 2:

dequeue_f();

break;

case 3:

list_f();

break;

case 4:

System.exit(0);

}

}while(true);

}

}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java队列模拟_Java模拟队列 的相关文章

  • Android 13 网络 Adb相关流程深入分析研究

    Android 13 网络 Adb 分析研究 文章目录 Android 13 网络 Adb 分析研究 一 前言 二 默认adb 代码实现 关键 1 修改的目录 2 具体修改 1 在XXX device mk 添加属性 2 设置固定端口号 3
  • 高并发场景下缓存+数据库双写不一致问题分析和解决方案设计

    一 业务场景 库存系统 库存可能会修改 每次修改都要去更新这个缓存 redis 数据 每次库存的数据在缓存中一旦过期 或者是被清理掉了 前端的nginx服务都会发送请求给库存服务 去获取相应的数据 实际上的处理流程没有这么的简单 这里 其实
  • mysql 语句优化的十个经验

    mysql 语句优化的十个经验mysql 语句优化的十个经验 本文算是前一篇 查询语句优化经验总结1的后续 总结了 lt 高性能mysql gt 中与网上常见的一些优化经验中出现的案例进行总结与勘误 但是要注意本文中出现的explain结论
  • anaconda常用命令大全(保姆级别建议收藏)

    一 创建虚拟环境 conda create name env name conda create name env name python 3 6 创建指定python版本 conda create name env name python
  • jmeter分布式压测 linux

    主机master修改 jmeter properties server rmi ssl disable true server port 1099 remote hosts 192 168 36 131 1099 slave分机的ip地址
  • 【python】numpy的array数组与pandas的DataFrame表格互相转换(图文代码超详细)

    目录 0 环境 1 array数组和DataFrame表格的简单介绍 2 转换方式详解 代码 0 前提 需注意 1 array转化为DataFrame 2 DataFrame转化为array 3 完整代码 0 环境 windows jupy
  • WAMP环境隐藏PHP文件实际路径和后缀名

    有时候做客户端开发阶段得测试 需要一个模拟服务器的环境 我使用得最顺手得还是WAMP环境 后台给出的api接口的路径千奇百怪 在WAMP环境中如何模拟这些路径呢 如何将某个路径下的PHP文件映射到另一个URL路径下并隐藏PHP文件后缀呢 在
  • MySQL数据库安装实践 Part 1:单实例部署

    1 MySQL的安装方法介绍 当今的互联网企业中 MySQL数据库大多运行在linux系列操作系统 若应用场景不同 版本不同 MySQL数据库的安装方法也会有区别 下面把常见的几种方法介绍给朋友们 1 1 yum rpm方式安装 MySQL
  • 【zookeeper】raft 共识算法 动画演示 网站

    1 概述 地址 https cyberdak github io thesecretlivesofdatacn raft
  • 中国计算机大会CNCC技术论坛

    第十五届中国计算机大会 CNCC2018 将于 2018 年 10 月 25 27 日在杭州国际博览中心举行 本届大会以 大数据推动数字经济 Big Data Drives the Digital Economy 为主题 探讨计算技术领域最
  • Java-String类的常用方法

    Java String类的常用方法 1 常用方法1 int length 返回字符串的长度 return value length char charAt int index 返回某索引处的字符return value index bool
  • 数据库表字段命名规范

    本文是一篇包含了数据库命名 数据库表命名 数据库表字段命名及SQL语言编码的规范文档 针对研发中易产生的问题和常见错误做了一个整理和修改 为日后涉及到数据库相关的研发工作做好准备 一 数据库命名规范 采用26个英文字母 区分大小写 和0 9
  • 有关深度学习的文章

    https zybuluo com hanbingtao note 485480 https tigerneil gitbooks io neural networks and deep learning zh content chapte
  • OrCAD原理图绘制使用操作

    文章目录 工程的创建 原理图整体设置 调用元器件库 常用元器件库调用 key 一些元器件库介绍 key 常用元器件搜索名 自建元器件库 新建元器件库 新建元器件 绘制元器件管脚设置 key Homogeneous和Heterogeneous
  • 数据结构-树

    目录 树 知识框架 一 树的基本概念 1 树的定义 2 基本术语 3 树的性质 二叉树 一 二叉树的概念 1 二叉树的定义 2 特殊的二叉树 3 二叉树的一些性质 4 二叉树的存储结构 1 顺序存储 2 链式存储 二 二叉树的创建和遍历 1
  • 关于 VTK 7.1.0 + python3.X 的 pycharm 开发环境的搭建

    在此记录一下关于关于 VTK 7 1 0 python3 X 的 pycharm 开发环境的搭建中碰到的问题 一 什么是 VTK 以及支持 python 的版本 VTK visualization toolkit 是一个开源的免费软件系统
  • php7.4安装

    php7 4安装 下载安装编译工具 yum groupinstall Development Tools y 安装依赖包 yum y install libxml2 libxml2 devel openssl openssl devel b
  • Spring Security详解

    Spring Security详解 一 系统安全 二 Spring Security简介 三 案例 1 新建模块 2 导入静态资源 3 编写控制器 实现跳转 4 安全功能实现 认证和授权 权限控制和注销 记住我 一 系统安全 在Web开发中
  • ES6知识点总结二:解构赋值

    3 解构赋值 ES6 允许按照一定模式 从数组和对象中提取值 对变量进行赋值 这被称为解构 数组 const courseArr es6 es7 es8 const a courseArr 0 const b courseArr 1 con

随机推荐

  • 2023计算机毕业设计选题推荐——Java项目

    A170 536 springboot新冠物资管理系统 A171 537 基于SSM的社区疫情防控平台 A172 538 ssm民宿预订管理系统 A173 539 ssm网上水果生鲜超市商城 A174 540 ssm线上跳蚤市场平台 A17
  • C++万能头文件#include<bits/stdc++.h>

    include
  • 发放金币(循环)

    分享一下个人思路 如果拿1金币 可以拿1天 2金币拿两天 n金币拿n天 也就是说 我们要拿n金币 从当前的天数开始循环n次 每次拿n 每次拿完之后天数 1 include
  • 微信小程序之获取用户位置权限(拒绝后提醒)

    小编推荐 Fundebug专注于JavaScript 微信小程序 微信小游戏 Node js和Java实时BUG监控 真的是一个很好用的bug监控费服务 众多大佬公司都在使用 微信小程序获取用户当前位置有三个方式 1 wx getLocat
  • Google guava之Table简介说明

    转自 Google guava之Table简介说明 下文笔者讲述guava中Table集合的简介说明 如下所示 guava之Table集合简介 Table集合 用于存储数据表 类似于Map
  • 报错异常:java.lang.NoClassDefFoundError

    一 问题背景 由原先的jdk1 8升级至jdk20 启动项目登录后台出现报错问题 org springframework web util NestedServletException Handler dispatch failed nes
  • HttpClient介绍

    本文内容整理自 https blog csdn net w372426096 article details 82713315 HttpClient相比传统JDK自带的URLConnection 增加了易用性和灵活性 它不仅使客户端发送Ht
  • WIN10-22H2专业版_电脑维修人员专用装机系统镜像【04.20更新】

    WIN10 22H2专业版是由站长亲自封装的电脑维修人员专用装机系统镜像 系统干净无广告 稳定长效不卡顿 适合电脑维修店用来维修电脑重装系统 此版本是WIN10系统里非常稳定的正式版本之一 适合在维修电脑时重装系统或者大批量装机使用 本次封
  • 服务器入门

    GPU工作站 服务器 1 cdot 1 1 型号 AMD宵龙 RTX3090 为例 内存类型 REG 内存 8个DIMM DDR4插槽 3200高频内存 gt system长时间稳定运作 存储 8个 3 5英寸驱动 8块3 5存硬盘 2个N
  • C++ 11 新特性之统一初始化语法

    C 之前的初始化语法很乱 有四种初始化方式 而且每种之前甚至不能相互转换 让人有种剪不断 理还乱的感觉 曾经去面试 就有人问我string有几种初始化方式 当时就说出了两种 fuck 面试官还得意的说 你连基本的初始化方式都记不清 还做啥2
  • Qt 中 connect 函数实现信号与槽函数的连接

    目录 简介 connect 函数原型 代码示例 自定义信号和槽函数 信号和槽函数的线程安全性 总结 简介 Qt 是一个功能强大的跨平台应用程序开发框架 其提供了 connect 函数用于信号和槽的连接 实现了对象之间的通信 本文将介绍 co
  • RUST中所有权/生命周期/借用本质探讨

    本书github链接 深入RUST标准库内核 本文摘自以上链接的书籍 如果对本文中涉及的若干知识想进一步了解 请阅读此书 RUST在定义一个变量时 实际上把变量在逻辑上分成了两个部分 变量的内存块与变量内容 变量类型定义了内存块内容的格式
  • vue 源码解读

    前端基本 0基础 尝试从代码入手 不会的直接搜索就行了 成功添加页面 test33 1 在 src config menu js 源码24行增加 title Test33 name Test33 icon 2 在 src routers r
  • pycharm的git密码错误

    原文地址 https www cnblogs com wangjian941118 p 10721650 html pycharm使用gitlab输错密码解决办法 这个问题困扰我两周了 今天抱着试一试的想法 随手搜了一下 出现了新的结果 就
  • 去银行写代码是什么体验?

    最近在知乎上的一个回答火了 关于如何学习操作系统的 分享给大家 如何学会操作系统这门课程 一线互联网岗位和银行 国企还是有点区别的 这篇文章 讲详细讲一讲银行或者金融科技的相关问题 包括面试 待遇等等 虽然前阵子网传几大互联网公司都去掉了大
  • ChatGPT解决了我的出行规划焦虑

    我的五一出行规划 五一旅游季又将到来 许多人为了规划理想的行程而苦恼 需要投入相当时间来筛选各种信息 然而 现在有了Chat GPT 安排美好旅途变得异常简单 只要您告诉GPT您的日期和目的地 不到30秒就可以生成个性化的行程攻略 同时还可
  • APP兼容性测试如何测试?

    随着 APP 应用范围越来越广 用户群体越来越大 终端设备的型号也越来越多 移动终端碎片化加剧 使得 APP兼容性测试成为测试质量保障必须要考虑的环节 APP兼容性的测试主要包含系统兼容 产商ROM 兼容性 屏幕分辨率兼容 网络兼容 其他兼
  • PHP+nginx完成大文件下载处理

    最近在板子上做文件下载的处理 需求相对简单 一个下载请求过来 根据请求的数据决定给那些文件回去 于是采用了php nginx的方式来处理 尝试 nginx用来处理下载请求 拿到请求以后 调用配置好的php文件 php文件中对请求的参数做处理
  • actuator--基础--6.1--端点解析--health端点

    actuator 基础 6 1 端点解析 health端点 代码位置 https gitee com DanShenGuiZu learnDemo tree master actuator learn actuator01 1 health
  • java队列模拟_Java模拟队列

    用Java模拟队列的出队和进队 1 代码 Java 代码 package com stackANDqueue import java io DataInputStream import java io IOException 循环队列的入队