[javaSE] 数据结构(队列)
2023-02-18 15:47:19 时间
队列是一种线性存储结构,他有以下特点:
1.队列中数据是按照“先进先出”方式进出队列的
2.队列只允许在“队首”进行删除操作,在“队尾”进行插入操作
3.队列通常包含两种操作:入队列和出队列
使用数组实现队列
定义一个类ArrayQueue
实现入队列方法push()
实现出队列方法pop()
实现返回队首方法front()
实现返回队列长度方法size()
public class ArrayQueue { private int[] mArray; private int mCount; public ArrayQueue(int num) { mArray=new int[num]; mCount=0; } /** * 入队列 * @param item */ public void push(int item){ mArray[mCount]=item; mCount++; } /** * 出队列 * @return */ public int pop(){ int top=mArray[0]; mCount--; //往前移动一元素 for(int i=1;i<=mCount;i++){ mArray[i-1]=mArray[i]; } return top; } /** * 队列长度 * @return */ public int size(){ return mCount; } /** * 打印数组 */ public void print(){ for(int i=0;i<=mCount-1;i++){ System.out.print(mArray[i]+","); } } /** * @param args */ public static void main(String[] args) { ArrayQueue queue=new ArrayQueue(3); queue.push(5); queue.push(6); queue.push(7); queue.print();//输出 5,6,7, queue.pop(); queue.print();//输出 6,7, queue.push(8); queue.print();//输出 6,7,8, } }
相关文章
- 超级好用的 Java 数据可视化库:Tablesaw
- 采用开源Zabbix+500块硬件平替5万块动环检测系统,实现UPS、温湿度、烟雾等数据采集、存储、告警、大屏展示
- 驱动开发:WinDBG 常用调试命令总结
- 中小企业快速合规,快速部署开源堡垒机TELEPORT
- 驱动开发:监控进程与线程对象操作
- 客快物流大数据项目(九十六):ClickHouse的VersionedCollapsingMergeTree深入了解
- 软件测试|selenium屏幕操作事件TouchActions
- FPS游戏:视场角矩阵的特点
- Path Finder for Mac(强大的文件管理工具)v2149中文激活版
- 零售行业R公司对接亚马逊Amazon Device EDI项目案例
- FPS 游戏:快速寻找基址的方法
- 7min到40s:SpringBoot启动优化实践
- 客快物流大数据项目(九十九):Clickhouse中update/delete的使用
- 手把手教你使用CNN进行交通标志识别(已开源)
- 软件测试|selenium三种等待方式
- FPS游戏:实现人物定点瞬移
- 人力资源行业数据特点解析
- PE格式:实现PE文件特征码识别
- PE格式:实现VA与FOA之间的转换
- PE格式:导入表与IAT内存修正