1、利用队列实现一个学生排队买票功能

1、定义一个学生类Student,包括学号No、姓名Name、性别Gender、年龄Age等信息

2、定义一个队列类Queue,用于将学生进行队列排序

3、可以从队列中删除学生

4、可以向队列中新增一名学生

5、注意:

(1)队列是一种数据结构,采取先进先出原则,先进入队列的数据先出队列

(2)可以定义一个对象数组,当数组元素未满,则新的同学可以进入;

(3)元素的删除只能从第一个元素删除(即队列头位置);元素的加入,只能从队尾加入

(4)要注意如果队列已满,则新的元素暂时不能加入;队列已空,则不能删除元素

package text14;/*1、利用队列实现一个学生排队买票功能
1、定义一个学生类Student,包括学号No、姓名Name、性别Gender、年龄Age等信息
2、定义一个队列类Queue,用于将学生进行队列排序
3、可以从队列中删除学生
4、可以向队列中新增一名学生
5、注意:
(1)队列是一种数据结构,采取先进先出原则,先进入队列的数据先出队列
(2)可以定义一个对象数组,当数组元素未满,则新的同学可以进入;
(3)元素的删除只能从第一个元素删除(即队列头位置);元素的加入,只能从队尾加入
(4)要注意如果队列已满,则新的元素暂时不能加入;队列已空,则不能删除元素*/
public class test {public static void main(String[] args) {Queue queue = new Queue();queue.Queue(6);//添加学生信息(进队列)queue.addQueue("12", "小明", "男", "13");queue.addQueue("13", "王二", "女","13");queue.addQueue("14", "刘六", "男", "13");queue.addQueue("15", "村三", "男", "13");queue.addQueue("16", "小白", "女", "13");//queue.addQueue("240", "E", "man", "13");//队列满员//删除学生类(出队列)queue.deleteQueue();queue.deleteQueue();queue.deleteQueue();queue.deleteQueue();queue.deleteQueue();//queue.deleteQueue();//队列为空禁止出队}}
class Student {public String No;public String Name;public String Gender;public String Age ;public void Get() {System.out.println(No + " " + Name + " " + Gender + " " + Age +" 的信息被删除!");}public void Set(String No, String Name, String Gender, String Age ) {this.No = No;    this.Name = Name;  this.Gender = Gender;this.Age = Age;}}
class Queue extends Student{private int maxSize;private int front;public int real;Student[] student ;public void Queue(int maxSize) {this.maxSize = maxSize;this.front = 0;this.real = 0;student = new Student[maxSize];}//判断队列是否满public boolean isFull() {return real == maxSize - 1;}//空public boolean isEmpty() {return real == front;}//添加元素public void addQueue(String No, String Name, String Gender, String Age) {if(isFull()) {throw new RuntimeException("队列已满,禁止入队!");}else {student[real] = new Student();student[real].Set(No, Name, Gender, Age);                         real++;}}public void deleteQueue() {if(isEmpty()) {throw new RuntimeException("队列为空,禁止出队!");}else {student[front++].Get();}}
}

java利用队列实现一个学生排队买票功能相关推荐

  1. 【swjtu】数据结构实验3_基于循环队列的排队买票模拟程序

    实验内容及要求: 编程建立循环队列存储结构,对排队买票过程进行模拟.要求程序在控制台屏幕上显示字符菜单: 1. 排队--输入新到达的买票人姓名,加入买票队列中: 2. 售票--排队队列中最前面的人购票 ...

  2. java排队买票_【排队买票】 (Java代码)

    解题思路: 注意事项: 参考代码:public class 排队买票 { public static int count = 0; public static void qpl(char[] char ...

  3. 一个高并发买票的实例

    2.一个高并发买票的实例:  马克-to-win:我 们现在回到春节高并发买票的问题.我们假设有一百万个人买一百张票,其中买票程序一百万个线程同时运行.不用改变mysql的缺省事务隔离级别.任何人在 ...

  4. 算法笔记四 排队买票

    算法笔记四 排队买票 题干 思路 解法一 解法二(转载自https://blog.dotcpp.com/a/64305) 解法三 递归 代码实现 解法二 卡特兰数 解法三 递归 题干 描述 有M个小孩 ...

  5. c语言实现演唱会歌迷排队买票问题

    ** 一个演唱会即将举行,现有 N 个歌迷排队买票,一个人一张,而售票处规定,一个人每次最多买两张,假设买一张票的时间为 Ti ( 1<=i<=N ) , 队伍中相邻的歌迷(第 j 个人和 ...

  6. java排队买票_春运还需多少通宵排队买票猝死的悲剧

    平凡岁月,生老病死原本算不得什么,一个老人,死于火车站的通宵等待中,就是这样.不能活着回去,那就裹尸而还,死也算是另一种回家. 这位老伯,不知姓名,"看起来60岁左右,身上穿的衣服灰扑扑的& ...

  7. 利用stm32做一个升级版的电子多功能密码锁

    `自己利用空闲时间制作的电子密码锁,有PCB.原理图,PCB印制电路板.此设计用外部存储器,支持修改密码,本来想添加指纹识别模块,但是12864的数据口被使用了,gpio口不够用.在实际中我发现128 ...

  8. 改进排队买票多线程问题

    /*模拟3个人排除买票,每人买1张票. 售货员只有1张五元的钱,电影票5元一张, 王大拿拿一张二十元的人民币排在谢大脚前面买票, 谢大脚拿1张十元的人民币排在在赵四的前面买票, 赵四拿1张五元的人民币 ...

  9. 1054: 【排队买票】

    题目描述 有M个小孩到公园玩,门票是1元.其中N个小孩带的钱为1元,K个小孩带的钱为2元.售票员没有零钱,问这些小孩共有多少种排队方法,使得售票员总能找得开零钱.注意:两个拿一元零钱的小孩,他们的位置 ...

最新文章

  1. inv(a) matlab,设A为矩阵,b为列向量,则Matlab中运算A\b 和运算inv(A)*b
  2. postgre 没有主键自增ma_PostgreSQL 主键自增解决方案
  3. PE关于导入表(IAT)知识复习
  4. 写代码:输入一年份,判断该年份是否是闰年并输出结果。
  5. abb限位开关已打开drv1_广告雕刻机限位开关触发
  6. sqlserver查询补全时间_mssql 按日期分组(group by)查询统计的时候,没有数据补0的解决办法...
  7. Skiing POJ 3037 很奇怪的最短路问题
  8. 计算机固态硬盘安装,电脑安装了固态硬盘,需要如何重装系统?详细的方法教程在这里!...
  9. 架构之美第八章-软件架构的含义
  10. hp打印机装不上服务器系统,winxp系统无法安装HP打印机驱动程序如何解决
  11. 机器学习-累计分布函数(CDF)
  12. find命令 、 文件名后缀
  13. 用css伪元素制作箭头图标
  14. numeric scale mysql_MySQL基础教程1 — 数据类型之数值类型 - numeric
  15. linux系统运维必会
  16. B.系数 (Lucas定理)
  17. 从键盘输入圆柱体的半径和高,求圆柱体的表面积和体积
  18. linux挂载盘阵权限,linux挂接盘阵错误
  19. 开学季都有哪些数码产品推荐?2022年数码好物推荐
  20. ipad mini android平板,iPad mini没想带Android平板玩

热门文章

  1. ENFJ型人格适合选择哪些专业?
  2. Excel导入导出(导出有两种方式:直接返回流、返回下载地址)
  3. Hadoop DataNode 下线操作
  4. u盘插电脑后服务器未响应,绿叶u盘装系统win10出现dns服务器未响应怎么办
  5. python setattr无限递归_如何避免使用setattr和属性setter来避免递归循环?
  6. NFT 平台需要对作品侵权负责么?
  7. 疫情之下,企业财务职能面临的挑战与机遇并存
  8. 前端页面jquery处理分子式,离子,化学反应方程式的方法与思路。
  9. CRISPR/Cas9基因敲除原理及实验建议
  10. Oracle-記一下使用full join的坑