• C++标准库类模板(stack)和 队列(queue)


    在C++标准库(STL)中有栈和队列的类模板,因此可以直接使用

    1、栈(stack):使用栈之前,要先包含头文件 : #include<stack>

    stack.push(elem);   //往栈头添加元素
    stack.pop();   //从栈头移除第一个元素
    stack.top();       //返回栈顶元素
    stack.empty();   //判断堆栈是否为空,栈空返回true,栈非空返回false
    stack.size();        //返回堆栈的大小

    例: 

    #include <iostream> 
    #include <stack>
    using namespace std;
    int main(){
    	
    	stack<int> stack;
    	int num;
    	
    	cout<<"入栈:"; 
    	
    	for(int i = 1;i<10;i++){
    		cout<<i<<" ";
    		stack.push(i);
    	}
    	
    	stack.empty()?cout<<endl<<"当前栈空":cout<<endl<<"当前栈非空"; 
    	cout<<endl<<"栈内元素数:"<<stack.size()<<endl;
    	cout<<"出栈:";
    	
    	while(!stack.empty())
    	{
    		cout<<stack.top()<<" ";
    		stack.pop();
    	}
    	
    	stack.empty()?cout<<endl<<"当前栈空":cout<<endl<<"当前栈非空"; 
    	
    	return 0; 
    }

    2、队列(queue):使用队列,要先包含头文件 : #include<queue>

    queue.push(elem)           //把元素压入队列尾部
    
    queue.pop()                //删除队首元素,但不返回
    
    queue.front()              //返回队首元素,但不删除
    
    queue.back()               //返回队尾元素,但不删除
    
    queue.size()               //返回队列中元素的个数
    
    queue.empty()              //检查队列是否为空,如果为空返回true,否则返回false

    例:

    #include <iostream> 
    #include <queue>
    using namespace std;
    int main(){
    	
    	queue<int> queue;
    	int num;
    	
    	cout<<"入队:"; 
    	
    	for(int i = 1;i<10;i++){
    		
    		queue.push(i);
    		cout<<queue.back()<<" ";
    	}
    	
    	queue.empty()?cout<<endl<<"当前队列空":cout<<endl<<"当前队列非空"; 
    	cout<<endl<<"队列内元素数:"<<queue.size()<<endl;
    	cout<<"出队:";
    	
    	while(!queue.empty())
    	{
    		cout<<queue.front()<<" ";
    		queue.pop();
    	}
    	
    	queue.empty()?cout<<endl<<"当前队列空":cout<<endl<<"当前队列非空"; 
    	
    	return 0; 
    }
  • 相关阅读:
    php读取excel日期类型数据的例子
    asp.net字符串分割函数用法
    asp.net页面与页面之间传参数值
    css3中定义required,focus,valid和invalid样式
    java写入文件的几种方法小结
    php file_get_contents与curl性能比较
    Jquery库及其他库之间的$命名冲突解决办法
    [转]DOS特殊字符转义方法
    [转]删除SQL Server Management Studio中保存的帐户信息
    Jpeg2000 简介
  • 原文地址:https://www.cnblogs.com/mydrizzle/p/10651239.html
Copyright © 2020-2023  润新知