数组队列 的简单实现

在介绍数组队列之前我想先介绍一下数组是为何物,数组是数据的一中存储结构,其定义为:

数组类型[] 数组名=new 数组类型[数组长度]

然而数组存储类型有许多不足就是长度一定,不能随机应变。于是我们创造队列以弥补这一缺陷。可以说队列是更加完美的数组。其实现方法如下:

 

package Sameple0419简单的队列;
/**
 * 新建一个学生类
 * @author Administrator
 *
 */
public class Student {
	private String name;
	private int score;
	public Student(String name ,int score){
		this.name=name;
		this.score=score;
	}
	public void show(){
		System.out.println("姓名"+name+"学分"+score);
	}

}

 定义队列可以自动添加的方法

public class sameple0401 implements NetJavaList{
/**
 * 向队列中加入一个学生对象
 * @author student
 */
	private Student[] scr=new Student[0];
	public void add(Student stu){
		//新建一个数组
		Student[] desk=new Student[scr.length+1];
		//将要加入的元素加在新数组的最后一个位置
		desk[scr.length]=stu;
		//用for循环把原来数组里的对象copy到新数组里
		for(int i=0;i<scr.length;i++){
			desk[i]=scr[i];
		}
		scr=desk;
		
	}
	/**
	 * 取得队列中指定位置的一个对象
	 * @param index
	 * @return 一个学生对象
	 */
	public Student get(int index){
		Student st=scr[index];
		return st;
	}
	/**
	 * 得到数列的长度,即数列中元素的个数
	 * @return 数组中元素的个数
	 */
	public int size(){
		return scr.length;
	}
	
	

}

 测试:

public class test {
	

	/**
	 * 程序入口
	 * @param args
	 */
	public static void main(String[] args) {
		//创建一个数列对象
	 NetJavaList njl=new sameple0401();
	 for(int i=0;i<5;i++){
		 //实例化Student类
		 Student st=new  Student("name"+i,i+10);
		 //加入队列
		 njl.add(st);
	 }
	 //打印队列
	 printStudent(njl);
		
	}
	/*打印出队列中每个学生的信息*/
	
	public static void printStudent(NetJavaList sl){
		System.out.println(sl.size()+"个学生的信息如下:");
	for(int i=0;i<sl.size();i++){
		Student st=sl.get(i);
		st.show();
	}
	}

}

 程序输出结果:5个学生的信息如下:

小结:本博客用数组实现其队列的添加方法。其插入、删除方法与此类似在此不作赘述。

 

 

最简单的队列 这是我用c语言写的程序,我的其他资源都是免费的,是对于c语言初学者的帮助比较大的,其中有数据结构,window编程。我也在学c语言,每当我写完一个程序,我都会免费发上来。 这个是队列的最简单的应用 立即下载

相关推荐

【可信数据空间-连接器技术架构设计方案】

一句话概括连接器是可信数据空间的“数据保镖”和“外交官”。连接器就是一个部署在你本地的软件代理,它代表你安全地对外提供数据服务,确保在共享数据价值的同时,牢牢守住数据的所有权和控制权。它是实现“数据可用不可见”这一理想的关键技术部件。一个生动的比喻:银行的金库和接待员想象一下,你的数据就是藏在银行金库里的黄金和钞票。金库(你的内部数据库): 绝对安全,外人绝对不能进。接待员(连接器): 坐在银行大厅里,负责与客户打交道。客户向接待员提出请求:“我想取1000元。

u014716614的博客 2273

数组实现队列

数组实现队列 什么是队列? 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。 队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in f

yaolong 494

5分钟搞定!用ZLMediaKit搭建GB28181视频监控系统(含避坑指南)

本文提供了一份基于ZLMediaKit搭建GB28181视频监控系统的实战指南。文章详细介绍了从环境准备、核心组件(ZLMediaKit与SIP服务器)部署、摄像头配置到内外网穿透的完整流程,并重点分享了设备ID配置、防火墙设置等关键避坑经验,帮助开发者快速构建稳定可控的监控平台。

apple5的专栏 1087

用数组实现简单队列

数据结构,队列,数组

qq_52135683的博客 355

Python离线断网情况下安装numpy、pandas和matplotlib等常用第三方包

联网情况下在命令终端CMD中输入“pip install numpy”即可自动安装,pandas和matplotlib同理一样方法进行自动安装。 工作的电脑不能上外网,所以不能通过直接输入pip命令来安装。 环境:电脑上已经安装了Python(没有安装的请参考其他教程)。 Python离线断网情况下安装numpy、pandas和matplotlib等常用第三方包的步骤如下: ...

dayou7738的博客 4944

用Logisim搞定华科计组实验:单总线CPU设计从微程序到硬布线的保姆级通关攻略

本文详细介绍了如何使用Logisim完成华中科技大学计算机组成原理实验中的单总线CPU设计,涵盖从微程序控制器到硬布线控制器的完整实现过程。通过MIPS指令译码器设计、微程序控制原理、状态机实现等关键步骤的保姆级教程,帮助学生掌握CPU设计的核心技能,并提供Educoder平台提交与调试的实用技巧。

weixin_30897233的博客 478

数组实现简单队列

对于队列来说,需要队首和队尾指针变量,出队改变队首,入队改变队尾。此外需要队列的大小和存放数据的变量。代码如下: public class ArrayQueue { private int maxSize; private int[] queue; private int front; //队首 private int rear; //队尾 public ArrayQueue(int maxSize){ this.maxSize = maxS

程序猿阿蛮 190

dify制作的工作流如何通过API调用

本文介绍了如何通过Python程序调用Dify工作流API实现数据处理功能。文章详细展示了workflow和chatflow的调用方法,包括参数设置和结果输出,并提供了一个完整的API调用工具代码示例。该工具可实现文本处理、成果查重、关键词生成等功能,支持通过Python脚本或Postman进行调用。核心代码包含API请求函数和批量处理函数,通过HTTP请求与Dify服务端交互,实现自动化数据处理流程。

hhue2007的专栏 935

利用数组实现队列(超级简单)

数组实现队列 我们之前既然已经说过可以用链表实现队列,那么我也知道队列就是一种表,那么自然的,也可以用数组实现队列,上代码:后讲解 /*队列的数组实现*/ /*头文件*/ #include<stdio.h> #include<stdlib.h> #define error(str) fprintf(stderr,"%s",str),exit(1)//自定义报错信息 typ...

qq_45804132的博客 1376

扣子(Coze)搭建智能体完整实战指南 —— 从零基础入门到写小说及其他需求扩展开发

随着大语言模型进入应用爆发期,我们正在经历从“寻找提示词”向“构建智能体”的范式转移。扣子(Coze)作为字节跳动推出的一站式AI智能体开发与运营平台,极大地降低了AI应用开发的门槛,让非技术人员也能快速搭建具备感知、决策、行动能力的智能体。 本文将手把手带你从零开始,在扣子平台上搭建一个功能完备的**小说创作智能体**,并基于此展示如何将同一套架构扩展到其他需求场景。无论你是写作爱好者、内容创作者,还是希望用AI赋能日常工作的职场人士,这套完整的技术方案都将帮助你快速上手。

huanghm88的专栏 638

【Altium Designer】Off grid pin解决方法

​今天我画完原理图编译时,出现了太多的黄色(出现warning警告提示)Off grid pin警告,这个警告并不是原理图电气连接出问题了,而是元器件或器件PIN脚没有和栅格对齐造成的原因。再编译还是出现这个警告。 最后经过不断翻阅网上经验和实践,才最终解决,本经验详细记录了解决该警告的有效方法。 解决方案:以下是问题解决步骤... ​

夜半少年的博客 7550

队列 - 数组实现

队列的简介 队列(Queue)是一个有序的列表,可以通过数组和链表的方式实现,队列都是遵循先进先出的原则,即FIFO。 在JDK中的ArrayBlockingQueue类的底层实现就是通过数组来实现有序队列。 数组实现队列的流程 队列的本身是有序的列表,如果使用数组来存储队列数据,则队列声明入下图: putIndex用于标记元素插入的索引,默认初始化为0; takeIndex用于标记元素被读取的索引,默认初始化为0; 我们需要将这个数组做成可以循环使用的容器。例如如下我们添加了4个元素,如下图

weixin_38612830的博客 567

基于JeecgBoot 3.9.0 开源项目的企业管理平台

基于JeecgBoot 3.9.0 开源项目的企业管理平台

宁波阿成的博客 375

数组实现一个简单的队列

package main.java.queue; import java.util.Arrays; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.locks.ReentrantLock; /** @author 李嘉 @create 2020-07-05-20:24 队列是一个有序列表,可以用数组或者是链表来实现; 队列遵循先入先出的原则,即先存入队列的数据,要先 取出,后存入的

一路的博客 682

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

使用数组简单实现的阻塞队列

阻塞队列的简单实现

z1340954953 3399

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

基于数组实现简单的队列

/** * @Description 基于数组实现简单的队列(先进先出) * @auther Eleven * @create 2020-04-02 23:40 **/ public class MyQueue { int[] elements; public MyQueue() { //初始化的时候定义数组长度为0,防止下面调用的时候报空指针异常 ...

CoderJu的博客 210

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

队列——数组实现非环形简单队列

【主题】 数组实现非环形简单队列 【队列介绍】 队列是一个有序链表,可以用数组或是链表来实现 遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出 示意图:(使用数组模拟队列示意图) 【思路】 【代码实现】 队列代码 package suanfa; public class ArrayQueue { private int maxSize...

LeeBlog 410

Java数组实现简单的队列

Java数组实现简单的队列 代码: public class ArrayQueue { private final Object[] data; private final int maxSize; private int currentSize; private int front; private int tail; public ArrayQueue(int maxSize){ if (maxSize <= 0) {

w_1106的博客 160

数组简单实现队列的先进出

数组简单实现队列的先进出 package 队列; import java.util.Scanner; public class An_array_of_column { public static void main(String[] args) { AyyayCoumn ayyayCoumn=new AyyayCoumn(5); //创建一个菜单进行提示输入 Scanner scanner = new Scanner(System.in);

weixin_47640199的博客 416

简单先进先出队列的数组实现

代码】简单先进先出队列的数组实现。

HappyGameXuTao的博客 466

用数组简单实现队列

public class SpartArray { public static void main(String[] args) { //测试一把 ArrayQueue arrayQueue = new ArrayQueue(3); char key = ' '; Scanner scanner = new Scanner...

qq_42794038的博客 252

简单队列的实现(基于数组)

用C++实现一个简单的队列,基于数组来实现。 #ifndef _ARRAYQUEUE_ #define _ARRAYQUEUE_ #include #include using namespace std; template class ArrayQueue { public: explicit ArrayQueue(int maxSize = 100) : _size(0),_ma

thinking的专栏 668

基于简单循环数组实现队列(JAVA)

基于简单循环数组实现队列 队列抽象数据类型的这种简单实现使用数组,在数组中,采用循环的方式则增加元素,并使用两个变量分别记录队首和队尾元素。通常,使用front变量和rear变量分别表示队列中的队首元素和队尾元素。 基于数组来存储队列中的元素,可能会出现数组被填满的情况。这时,如果执行入队操作,将抛出队列满异常,同样,如果对空队列出栈,会抛出队列空异常 代码 Tips:初始化时,front = rear = -1 代表队列为空 /** * 基于简单循环数组的队列实现 */ public class A

weixin_37632716的博客 290

数组实现简单队列 - 数据结构笔记

使用数组实现简单队列(无环形结构 / JAVA代码) 队列: 队列是一个有序链表,可以用数组或是链表实现; 满足先入先出原则,即: 先存入到队列中的数据要先取出,后存入的数据要后取出; ; 数组实现简单无环队列 属性: maxSize 记录最大容量; front,rear 分别记录队列的头部和尾部的下标, front 会随着数据的出列操作而改变,而rear随着队列的入列而改变; Java 代码实现: public class QueueArr { int maxSize;//容量 int rear;

No1anWan6的博客 233

【原创】Java数据结构——用数组实现队列并简单分析

队列 队列是一个有序列表,队列可以使用数组或者链表实现 队列遵循FIFO(先进先出)的原则,即根据元素存入队列的顺序取出元素,先进入队列的元素先出队列 在现实生活中,存在很多出现队列的场景,如当我们去食堂打饭时,就会出现排队的情况,后来的人排到队列的尾部,先来的人先打完饭然后离队,这就是一种存在队列的场景 用数组实现简单队列 初始化队列 // 初始化队列参数 public ArrayQueue(int maxSize) { this.maxSize = maxSize; arr = new

Melonico的博客 1338
上一篇: 所谓递归
下一篇: I/O应用之24位真彩BMP文件的读取
rootke
博客等级 码龄12年 1粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值