zoukankan      html  css  js  c++  java
  • 栈和队列

    栈:栈(stack)又名堆栈,它是一种运算受限的线性表。其限
    制是仅允许在表的一端进行插入和删除运算。这一端被称为
    栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又
    称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上
    面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈
    或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的
    栈顶元素。

    队列:队列(queue)的的性质刚好与栈相反,功能类似,但队列是
    先进先出。

    可理解为“栈:先进后出,队列:先进先出”。

    代码如下:

    #include <iostream>
    #include <stack>//栈所需头文件 
    #include <queue>//队列所需头文件 
    using namespace std;
    int main()
    {
    	stack<int>sta;//栈的定义 
    	queue<int>que;//队列的定义 
    	for(int i=1;i<=5;i++)//存入数据 
    	{
    		int n;
    		cin>>n;
    		sta.push(n);//入栈
    		que.push(n);//入队列
    	}
    	while(!sta.empty())//检查是否为空 
    	{
    		cout<<sta.top()<<endl;//查询栈顶元素 
    		sta.pop();//元素出栈 
    	}
    	while(!que.empty())
    	{
    		cout<<que.front()<<endl;//查询队列顶端元素 
    		que.pop();//元素出队列 
    	}
    	/*清空栈 or 队列*/ 
    	while(!que.empty()) que.pop();
    	while(!sta.empty()) sta.pop();
    	return 0;
    }
  • 相关阅读:
    期末作业验收
    SDN第五次上机作业
    个人作业——软件工程实践总结作业
    SDN第四次作业
    SDN第四次上机作业
    SDN第三次作业
    SDN第三次上机作业
    SDN第二次上机作业
    SDN第二次作业
    个人作业——软件产品案例分析
  • 原文地址:https://www.cnblogs.com/cnlik/p/11851886.html
Copyright © 2011-2022 走看看