数据结构重温之队列篇
在程序设计中,队列结构也是一种常用的数据结构。队列结构和栈结构类似,其在现实生活中都有对应的例子,可以说队列结构是来源于生活的数据结构。
什么是队列结构
队列结构是从数据的运算来分类的,也就是说队列结构具有特殊的运算规则。而从数据的逻辑结构来看,队列结构 其实就是一种线性结构。如果从数据的存储结构来进一步划分,队列包括以下两类。
1.顺序队列结构:即使用一组地址连续的内存单元依次保存队列中的数据。在程序中,可以定义一个指定大小的结构数组作为队列。
2.链式队列结构:即使用链表形式保存队列中各元素的值。
从数据的运算角度来分析,队列结构是按照“先进先出”(即First In First Out, FIFO)的原则处理结点数据的。
在队列结构中,数据运算非常简单。一般队列结构的基本操作只有两个。
1.入队列:将一个元素添加到队尾(相当于到队列最后排队等候)。
2.出队列:将队头的元素取出,同时删除该元素,使后一个元素成为队头。
下面的代码为基本的队列操作,供大家参考。
package com.january.daily.queue;
class DATA{
String name;
int age;
public DATA(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
public class SQType {
static final int QUEUE_LENGTH = 15;
DATA[] data = new DATA[QUEUE_