标题：队列
军事用语
简介队列现象在军事活动中是一个重要现象。它是构成一切军事活动的重要基础。 
无论是纵观或是横观军事社会活动史，古往今来，一切队列现象都可以自然的区分为三类。即队列实用现象、队列精神现象、队列训练现象。它们是队列问题的三个层面，即相互联系、相辅相成；又相互独立、自成体系。它们以队列精神为主导，队列训练为基础，队列实用为目的。队列实用现象队列实用现象，即队列在军事社会活动中的实际运用形式，它有平时和战时之分。  瑞士步兵方阵&amp;amp在漫长的冷兵器年代，以及冷热兵器更替的年代里，队列实用现象训用合一，平战一体，仿佛队列活动现象就是军事组织的全部；到热兵器发展成熟的时期，队列实用现象平战分离，训用内化，从表象上看，有形的队列多见于平时队列活动之中，战时则不直接运用；而战时运用的具体形式则分化为灵活多变的战术——即战斗队形，且队列训练与战斗队形的训练呈阶段性分离，队列“兵教始基”的地位更加明显。其实，这正是有形的组织形式在组织成员大脑中深度内化整合后的产物——即高度的服从意识和组织意识，这在是通过长期训练达成军队高度有序的组织化、正规化的表现，是军事组织及军人特有的品质，以及不断适应军事科技现代化要求的体现。在军事高技术现代化发展的今天，如何实现军队正规化与现代化的适应性匹配，回过头来系统的分析与研究队列的历史是具有重要现实意义的。对队列实用现象的系统分析研究是把握队列发展史的关键内容。队列精神现象队列精神现象，即队列活动中的精神表现形式，它反映人们对队列问题认识与运用的最高境界。队列精神现象有两种基本的表现形式，队列礼仪和队列法规。  2009天安门阅兵的分列式队列礼仪是直接表现队列精神的最高形式，它有着独特的发展过程。从史料来看，《司马法》是最早规范队列礼仪的兵书，其有关内容被作为当时最高的军事活动准则而载入了《周礼》之中。无论是从最原始的祭事活动，还是古代帝王一直延袭的围猎校阅等。无论是帝王将相的门庭兵仪、随行兵仗；还是当今世界各国的国宾仪仗、阅兵等。无一不是通过行列形式的整齐一律、威武雄壮，来反映军队的凝聚力、战斗力，以到达到耀武扬威、威慑敌胆的目的。从本质上讲，队列礼仪正是通过队列的行列组织效能，来达成队列精神表现，这种表现也正是军旅崇高美的集中反映。只不过它随军队阶级属性的不同而不同，古往今来的帝王为了自己的统治地位和权势，对被压迫的民众而耀武扬威；今天我们作为人民的军队，耀的是军威、国威，同时也是民族精神、国民素质和军队战斗力的综合体现，是国家独立、民族团结自强不息的象征。 
队列法规是指军事法规史中的一种独特的队列文献现象，它一般是指由军队最高机关或军队最高统帅正式颁布执行的简明法律条文。队列法规是时代军事技术发展到一定时期的产物，它反映了军队正规化与时代军事技术发展相适应的要求，队列法规的形成为军队正规化建设提供了合理的内核。队列训练现象队列训练现象，即是通过队列训练建立与保持队列行为的人为操作现象。  队列训练队列训练是一切队列现象的基石，也是研究队列训练的主体。队列是军人排列成的行列组织形式，训练从形式上讲就是对军人的排列和构成，它通过队列动作、队列队形这个载体在队列指挥与被指挥之间形成应答条件反射，继而使受训者建立服从行为和组织行为，以保障军队成为高度集中统一的整体。从系统的行为科学观点来看，队列训练是达成军事组织行为的重要行为技术手段。队列基本要素在一切队列活动（队列生活）的现象中，通常都包含着四个基本要素。即：队列动作、队列队形、队列指挥、队列礼仪。 
队列动作 队列动作即军人按队列行为准则要求所必须遵循的动作规范。队列动作是队列的基础，它有个体与群体之分，即包括单个军人队列动作和建制部（分）队的队列动作。单个军人队列动作，实质上是队列行为准则对单个军人形体的同一性与一致性要求，为了强调形体是队列中的形体，能称之为队列动作，考虑到区别于队列队形，又以“单个军人”加以限定。所以说单个军人队列动作实质上是个体在队列中的形体动作，其目的是规范行列中的个体，使之达成队列整体上的同一性和一致性要求，为队列队形提供规范的个体。 
建制部（分）队的队列动作，它实质上是队列行为准则对队列群体所列队形的同一性与一致性要求，它以每一个体的规范动作为基础，以形式上的规范和群体之间的协调为目的。所以建制部（分）队的队列动作可称之为队列的组织动作，其目的在于建立协调一致的队列队形。 
两者的关系是，队列形体动作是队列队形的基础，因为没有对诸多个体在形体上的同一性、一致性规范，队列组织群体就不可能达成高度规范统一，形成整齐划一的组织整体。 
队列队形队列队形即队列行为准则中所规定的各种行列组织结构与表现形式。一般队列队形的基本形态都与建制组织结构有着严格的对应关系，在队列队形中表现为军队的每一级建制组织及其成员都有着严格的位序关系，以及确定的列队形式。所以对建制部（分）队队列动作的要求，就是队列队形的组织结构与组织成员之间的协作要求，其目的是一致的，即建立队列组织。 
队列指挥 队列指挥即队列指挥员按队列行为准则要求，对队列成员及其队列队形的调度。通常队列指挥员就是建制部（分）队的首长，这样的对应关系，便于指挥与协调，便于服从行为与组织行为的建立。  仪仗队列队队列礼仪 队列礼仪是指队列活动（队列生活）中所属成员必须按行为准则，遵循队列的礼节与仪式规范。这是军队组织成员良好内部关系及整体精神面貌的反映。从这个意义上说，队列就是“礼”，队列就是“规”，礼与规正是队列精神的集中体现。 
队列活动（队列生活）的四个基本要素，也是队列法规要规范的基本内容，更是队列训练所要把握的要点。队列的本质队列是由军人或部、分队在共同行动时构成的行列组织形式。队列是正规建制单位组织结构的外在表现。
队列的本质是对组织的“序”的规定性。队列不仅是兵教之基，队列更是“组织之母，管理之父”。古老的队列就象组织的“活化石”一样，向人们诉说着人类组织的发生与发展。
计算机用语
简介队列是一种特殊的线性表，它只允许在表的前端（front）进行删除操作，而在表的后端（rear）进行插入操作。进行插入操作的端称为队尾，进行删除操作的端称为队头。队列中没有元素时，称为空队列。
在队列这种数据结构中，最先插入的元素将是最先被删除的元素；反之最后插入的元素将是最后被删除的元素，因此队列又称为“先进先出”（FIFO—first in first out）的线性表。
队列空的条件：front=rear
队列满的条件： rear = MAXSIZE队列的数组实现队列可以用数组Q[1…m]来存储，数组的上界m即是队列所容许的最大容量。在队列的运算中需设两个指针：head，队头指针，指向实际队头元素的前一个位置；tail，队尾指针，指向实际队尾元素所在的位置。一般情况下，两个指针的初值设为0，这时队列为空，没有元素。数组定义Q[1…10]。Q(i) i=3,4,5,6,7,8头指针head=2，尾指针tail=8。队列中拥有的元素个数为:L=tail-head现要让排头的元素出队，则需将头指针加1。即head=head+1这时头指针向上移动一个位置，指向Q(3)，表示Q(3)已出队。如果想让一个新元素入队，则需尾指针向上移动一个位置。即tail=tail+1这时Q(9)入队。当队尾已经处理在最上面时，即tail=10，如果还要执行入队操作，则要发生"上溢"，但实际上队列中还有三个空位置，所以这种溢出称为"假溢出"。
克服假溢出的方法有两种。一种是将队列中的所有元素均向低地址区移动，显然这种方法是很浪费时间的；另一种方法是将数组存储区看成是一个首尾相接的环形区域。当存放到n地址后，下一个地址就"翻转"为1。在结构上采用这种技巧来存储的队列称为循环队列。
队列和栈一样只允许在断点处插入和删除元素。
循环队的入队算法如下：
1、tail=tail+1；
2、若tail=n+1，则tail=1；
3、若head=tail尾指针与头指针重合了，表示元素已装满队列，则作上溢出错处理；
4、否则，Q(tail)=X，结束（X为新入出元素）。
队列和栈一样，有着非常广泛的应用。
注意：（1）有时候队列中还会设置表头结点，就是在对头的前面还有一个结点，这个结点的数据域为空，但是指针域指向对头元素。
（2）另外，上面的计算还可以利用下面给出的公式cq.rear=(cq.front+1)/max;
当有表头结点时，公式变为cq.rear=(cq.front+1)/（max+1）。队列的链表实现在队列的形成过程中，可以利用线性链表的原理，来生成一个队列。
基于链表的队列，要动态创建和删除节点，效率较低，但是可以动态增长。
队列采用的FIFO(first in first out)，新元素（等待进入队列的元素）总是被插入到链表的尾部，而读取的时候总是从链表的头部开始读取。每次读取一个元素，释放一个元素。所谓的动态创建，动态释放。因而也不存在溢出等问题。由于链表由结构体间接而成，遍历也方便。队列的基本运算（1）初始化队列 Qini (Q) 
（2）入队 QADD(Q,X)　（3）出队 QDel(Q,X) 
（4）判断队列是否为空 qempty(Q)
（5）判断队列是否为满qfull(Q) 
操作
类型
作用
返回值
例子
length(s)
函数
求字符串s的长度
整型
s:='123456789';
l:=length(s);{l的值为9}
copy（s,w,k)
函数
复制s中从w开始的k位
字符串
s:='123456789';
s1:=copy(s,3,5);{s1的值是'34567'}
val(s,k,code)
过程
将字符串s转为数值，存在k中；code是错误代码
​var s:string;k,code:integer;
begin
s:='1234';
val(s,k,code);
write(k);{k=1234}
str(i,s)
过程
将数值i转为字符串s
​i:=1234;
str(i,s);
write(s);{s='1234'}
Delete(s,w,k)
过程
在s中删除从第w位开始的k个字符
​s := 'Honest Abe Lincoln';
Delete(s,8,4);
Writeln(s); { 'Honest Lincoln' }
Insert(s1, S, w)
过程
将s1插到s中第w位
​S := 'Honest Lincoln';
Insert('Abe ', S, 8); { 'Honest Abe Lincoln' }
Pos(c, S)
函数
求字符c在s中的位置
整型
S := ' 123.5';
i :=Pos(' ', S);{i的值为1}
+
运算符
将两个字符串连接起来
​s1:='1234';
s2:='5678';
s:=s1+s2;{'12345678'}
在STL中，对队列的使用很是较完美