• STL — 栈和队列(基础)


     基础函数:

    1,栈

    #define _CRT_SECURE_NO_WARNINGS
    #include<stdio.h>
    #include<stdlib.h>
    #include<stack>
    using namespace std;
    stack<int>s;
    int main(void)
    {
    	s.push(2);
    	s.push(3);
    	printf("s.top() = %d
    ", s.top());
    
    	s.pop();
    	printf("s.top() = %d
    ", s.top());
    	printf("s.size = %d
    ", s.size());
    	printf("s.empty = %d
    ", s.empty());
    
    	system("pause");
    	return 0;
    }
    

      stack<int>s;     //定义一个存放 int 类型的 栈

      s.push()    入栈一个元素   无返回值

      s.top()    取栈顶一个元素

      s.pop()      出栈一个元素  无返回值

      s.size()          查看元素个数

      s.empty()   若栈为空 返回 true, 否则 返回 false

    清空栈:

    ①while(!s.empty()) s.pop();   

    ②stack<int>q; s=q;                 用一个全新的栈赋值

    ③stack<int>q;   swap(s,q);     交换一个新的栈

     2,队列

      queue<int>q;

      q.push()  入队

      q.front()  取队首元素

      q.pop()  出队

      q.size()          查看元素个数

      q.empty()   若队列为空 返回 true, 否则 返回 false

    清空队列:

    ①while(!s.empty()) s.pop();   

    ②queue<int>q;  s=q;                 用一个全新的队列赋值

    ③queue<int>q;   swap(s,q);     交换一个新的队列

  • 相关阅读:
    浅析ES6中的iterator
    nodejs中的异步回调机制
    用好js与nodejs中的try...catch
    vscode设置html默认浏览器
    nodejs中相互引用(循环引用)的模块分析
    ES6—带默认值的函数参数及其作用域
    函数声明与函数表达式的区别
    let块级引起的闭包思考
    进程与线程
    angular(^4)-监控表格按键行为的问题
  • 原文地址:https://www.cnblogs.com/asdfknjhu/p/12382041.html
Copyright © 2020-2023  润新知