队列:
本次课程主要是队列的应用。
在我们编程的过程中,常常会出现这样的问题,想用数组来存放我们想要的数据,可是不知道数据的数目是多少,无法比较好的确定好数组的长度,那么这个时候我们就需要用到队列.
队列就相当于自定义的一个类,在这个类中,可以实现任意添加一个目标类的对象,或者删除一个目标类的对象。
如下实现一个简单的学生信息管理,代码如下:
public class Student {
//姓名属性
private String name;
//学分属性
private int score;
//创建学生对象,传入姓名和学分值
public Student(String name,int score){
this.name=name;
this.score=score;
}
//输出学生的基本信息
public void showInfo(){
System.out.println("姓名:"+name+"学分:"+score);
}
}
public class STList {
//在队列中加入一个学生对象
private Student[] s=new Student[0];
//向队列中加入一个学生对象
public void add(Student stu){
Student[] st=new Student[s.length+1];
st[s.length]=stu ;
for(int i=0;i<s.length;i++){
st[i]=s[i];
}
s=st;
}
//从队列中删除一个学生对象
public void remove(int index){
Student[] st=new Student[s.length-1];
for(int i=0;i<index-1;i++){
st[i]=s[i];
}
for(int i=index;i<s.length;i++){
st[i-1]=s[i];
}
s=st;
}
//取得队列中指定位置上的对象
public Student get(int index){
return s[index];
}
//得到队列的长度
public int size(){
return s.length;
}
}
public class Operate {
public static void main(String[] args) {
STList list=new STList();
for(int i=0;i<5;i++){
Student st=new Student("name",i+1);
//将学生加入队列
list.add(st);
}
list.remove(1);
//打印队列
printStudent(list);
}
public static void printStudent(STList list){
System.out.println(list.size()+" 个学生的信息如下:");
for(int i=0;i<list.size();i++){
Student stu=list.get(i);
stu.showInfo();
}
}
}
这样就实现了一个队列的操作。
分享到:
相关推荐
队列应用(用队列模拟超市交款处的顾客流) 使用一个队列模拟一队通过丹尼斯超市交款处的顾客流。为了创建这个模拟,我们必须模拟排队时间和顾客通过流。我们可以通过一个循环模拟时间,每通过一个顾客代表一定的...
2. **死信队列应用场景** - **超时未支付订单处理**:例如,如果一个订单在60分钟内未完成支付,系统需要检查并处理这些超时订单。使用定时任务轮询可能会有时间精度不高的问题,而通过延迟消息队列,可以确保在...
环队列结构,解决“划分冲突子集问题”,这是一种典型的队列应用,常用于日程安排、资源调度等问题。在给定的运动会日程安排场景中,我们需要将比赛项目分配到不同的时间,使得每个运动员能参加的所有项目不会在同一...
### Windows消息队列应用说明 #### 消息队列简介 Windows消息队列(Message Queuing,简称 MSMQ)是一种消息传递技术,它允许应用程序在不可靠的网络环境中可靠地发送消息。MSMQ 可以确保消息在发送者与接收者之间...
根据给定文件的信息,我们可以提炼出以下关于“消息队列应用实现聊天”的相关知识点: ### 消息队列概述 消息队列(Message Queue)是一种应用程序间的通信模式,其中一个组件发送消息到另一个组件的消息队列中。...
在“队列应用--舞伴配对”这个场景中,我们探讨的是如何利用C语言来实现一个舞伴配对的算法,这涉及到队列的特性及其在实际问题中的应用。 首先,我们要理解队列的基本操作:入队(enqueue)和出队(dequeue)。...
在探讨“队列应用之银行服务”的主题时,我们深入分析了队列这一数据结构如何在银行服务场景中实现高效客户管理和资源分配。队列,作为计算机科学中的基础数据结构之一,遵循先进先出(FIFO)原则,即最早进入队列的...
标题中的“消息队列应用之聊天室 源码”表明这是一个关于使用消息队列实现的聊天室应用程序的源代码。消息队列是操作系统提供的一种进程间通信(IPC)机制,它允许不同的进程通过发送和接收消息来共享数据,而无需...
本文将详细探讨基于STM32的串口环形队列应用及其可移植性。 首先,让我们理解什么是环形队列。环形队列是一种特殊的线性队列,它的首尾相接形成一个环状结构,因此在空间利用上更有效率。在串口通信中,环形队列...
"队列应用入队出队" 队列是一种重要的数据结构,广泛应用于计算机科学和信息技术领域。队列可以看作是一个特殊的线性表,其中元素的添加和删除操作只能在表的两端进行,即队尾插入元素,队头删除元素。下面是队列...
栈和队列应用2制作糖果.py
一个常见的队列应用场景是消息处理系统,例如事件队列。在Delphi7的小例子中,可能创建了一个简单的事件处理器,使用队列存储待处理的事件,然后按照FIFO原则逐个处理。 ```delphi type TMyEvent = record ...
队列应用.cpp
《汽车生产线制造执行系统队列应用与研究》 在当今高度自动化的汽车制造业中,制造执行系统(Manufacturing Execution System,简称MES)扮演着至关重要的角色。朱光旭的研究聚焦于MES在汽车生产线中的队列应用,这...
数据结构队列应用迷宫源代码
10.链式队列以及优先级队列应用.ppt
1. 栈的类定义(已实现,可参考附录:seqstack.h) ...10.应用队列完成Johnson问题(n个人围成一圈,每个人都有一个号码,从1..n,从1号报数,报到m号的出列,输出出列的号码顺序)。测试:10个人,报到3的出列。
### 列表队列应用详解 #### 一、引言 在计算机科学中,队列是一种常见的数据结构,用于管理按顺序排列的数据项。队列遵循先进先出(FIFO, First In First Out)的原则,即最先加入队列的数据项会最先被移除。在...
在Windows操作系统中,消息队列(Message Queue)是一种用于进程间通信(IPC,Inter-Process Communication)的技术,它允许不同的应用程序或线程之间交换信息。本文将深入探讨如何利用Windows自带的消息队列组件来...
实验五 堆栈和队列的应用 一、实验目的 掌握堆栈和队列的使用。 二、实验内容 1、计算数学表达式的值。 输入数学表达式,输出表达式的计算结果。数学表达式由单个数字和运算符“+”、“-”、“*”、“/”、“(、...