C++ 中queue(队列)的用法

#include <iostream>
#include <queue>
#include <assert.h>
/*
调用的时候要有头文件: #include<stdlib.h> 或

#include<cstdlib> +

#include<queue>       #include<queue>
详细用法:
定义一个queue的变量     queue<Type> M
查看是否为空范例        M.empty()    是的话返回1,不是返回0;
从已有元素后面增加元素   M.push()
输出现有元素的个数      M.size()
显示第一个元素          M.front()
显示最后一个元素        M.back()
清除第一个元素          M.pop()
*/
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
queue <int> myQ;

cout<< "现在 queue 是否 empty? "<< myQ.empty() << endl;

for(int i =0; i<10 ; i++)
{
myQ.push(i);
}
for(int i=0; i<myQ.size(); i++)
{
printf("myQ.size():%d\n",myQ.size());
cout << myQ.front()<<endl;
myQ.pop();
}

system("PAUSE");

return 0;
}

输出结果:
现在 queue 是否 empty? 1
myQ.size():10
0
myQ.size():9
1
myQ.size():8
2
myQ.size():7
3
myQ.size():6
4
请按任意键继续. . .

时间: 2024-12-29 09:12:48

C++ 中queue(队列)的用法的相关文章

Queue 队列的用法

队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作. LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用. 以下实例演示了队列(Queue)的用法: import java.util.LinkedList; import java.util.Queue; public class Main { public static void main(String[] args) { //add()和remove()方法在失败的时

C++STL模板之queue队列的用法

1 #include <iostream> 2 3 #include <queue> 4 5 #include <assert.h> 6 /* 7 调用的时候要有头文件: #include<stdlib.h> 或 #include<cstdlib> + 8 #include<queue> #include<queue> 9 详细用法: 10 定义一个queue的变量 queue<Type> M 11 查看是否为

112 python程序中的进程操作-进程之间进行通信(mulitiProcessing Queue队列)

一.进程间通信 IPC(Inter-Process Communication) IPC机制:实现进程之间通讯 管道:pipe 基于共享的内存空间 队列:pipe+锁的概念--->queue 二.队列(Queue) 2.1 概念-----multiProcess.Queue 创建共享的进程队列,Queue是多进程安全的队列,可以使用Queue实现多进程之间的数据传递. Queue([maxsize])创建共享的进程队列. 参数 :maxsize是队列中允许的最大项数.如果省略此参数,则无大小限制

java中使用队列:java.util.Queue (转)

Queue接口与List.Set同一级别,都是继承了Collection接口.LinkedList实现了Queue接 口.Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法 了,而不能直接访问 LinkedList的非Queue的方法),以使得只有恰当的方法才可以使用.BlockingQueue 继承了Queue接口. 队列是一种数据结构.它有两个基本操作:在队列尾部加人一个元素,和从队列头部移除一个元素就

atitit. java queue 队列体系and自定义基于数据库的队列总结o7t

atitit. java queue 队列体系and自定义基于数据库的队列总结o7t 1. 阻塞队列和非阻塞队列 1 2. java.util.Queue接口, 1 3. ConcurrentLinkedQueue 2 4. BlockingQueue阻塞队列 2 4.1. 1. ArrayBlockingQueue 3 4.2. 2. LinkedBlockingQueue 3 4.3. 3. DelayQueue 3 4.4. 4. PriorityBlockingQueue 3 4.5. 

atitit. java queue 队列体系and自己定义基于数据库的队列总结o7t

atitit. java queue 队列体系and自己定义基于数据库的队列总结o7t 1. 堵塞队列和非堵塞队列 1 2. java.util.Queue接口. 1 3. ConcurrentLinkedQueue 2 4. BlockingQueue堵塞队列 2 4.1. 1. ArrayBlockingQueue 3 4.2. 2. LinkedBlockingQueue 3 4.3. 3. DelayQueue 3 4.4. 4. PriorityBlockingQueue 3 4.5.

进击的Python【第九章】:paramiko模块、线程与进程、各种线程锁、queue队列、生产者消费者模型

一.paramiko模块 他是什么东西? paramiko模块是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 先来个实例: 1 import paramiko 2 # 创建SSH对象 3 ssh = paramiko.SSHClient() 4 5 # 允许连接不在know_hosts文件中的主机 6 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 7 # 连接服务器 8 ss

jquery 的动画列表、jquery的queue、dequeue用法

//1,我首先建议了一个函数数组,里边是一些列需要依次执行的动画 //2,然后我定义了一个回调函数,用dequeue方法用来执行队列中的下一个函数 //3,接着把这个函数数组放到document上的myAnimation的队列中(可以选择任何元素,我只是为了方便而把这个队列放在document上) //4,最后我开始执行队列中的第一个函数这样做的好处在于函数数组是线性展开,增减起来非常方便. var FUNC=[ function() {$(".p1").animate({'width

ios中的多线程的用法总结

ios中的多线程的用法总结 1.进程的基本概念 (1)每一个进程都是一个应用程序,都有独立的内存空间,一般来说一个应用程序存在一个进程,但也有多个进程的情况 (2)同一个进程的线程共享内存中的内存和资源 2.多线程的基本概念 (1)每一个程序都有一个主线程,程序启动时创建(调用main来启动). (2)多线程技术表示,一个应用程序有多个线程,使用多线程能提供CPU的利用率,防止主线程被堵塞. (3)任何有可能堵塞主线程的任务不要在主线程执行(如:访问网络). (4)主线程的生命周期和应用程序绑定

python2.0_s12_day9之day8遗留知识(queue队列&amp;生产者消费者模型)

4.线程 1.语法 2.join 3.线程锁之Lock\Rlock\信号量 4.将线程变为守护进程 5.Event事件 * 6.queue队列 * 7.生产者消费者模型 4.6 queue队列 queue非常有用,当信息必须安全的在多个线程之间进行数据交换的时候就应该想到queue 所以,queue它能保证数据被安全的在多个线程之间进行交换,那他就是天生的线程安全. queue有那么几种: class queue.Queue(maxsize=0) # 先入先出 class queue.LifoQ