zoukankan      html  css  js  c++  java
  • 总结:栈和队列的学习

    总结一下栈和队列的学习中我遇到的重点:

    1.C++比较容易实现栈和队列的操作,像是开挂一样,而徒手用C写的话太繁琐了。

    2.栈和队列有区别,前者是后进先出,后者是先进后出

    3.总结了一下C++中栈的基本操作:

    入栈,s.push(x)
    出栈,s.pop()
    访问栈顶,s.top()
    判断栈空,s.empty()
    访问栈中的元素个数,s.size()
    

    4.总结了一下C++中队列的基本操作:

    入队,q.push(x)
    出队,q.pop()
    访问队首元素,q.front()、访问队尾元素,q.back()
    判断队列空,q.empty()
    访问队列中的元素个数,q.size()
    

    5.优先队列:

    priority_queue <int,vector<int>,greater<int> > q;//从大到小的队列
    priority_queue <int,vector<int>,less<int> > q;//从小到大的队列

     熟练运用优先队列可以完成一些比较骚的操作:比如,拿它写快排???嘻嘻嘻我就干过这事,还AC了呢!

        这个到后续的哈夫曼树中也要用到,总之要记住并学会。

    总体来说:栈和队列还是比较实用的,在以后的许多算法中都会用到栈和队列,所以务必要学好。

  • 相关阅读:
    Vue.js整理
    linux~dd命令
    linux 开机自启动的两种方式
    解决mount.nfs: access denied by server while mounting
    pip与apt-get的使用
    Mysql 中字符串的截取
    学生练习:括号匹配
    迷宫问题,打印所有路径,深度搜索,dfs
    vector用法
    【CF1257A】Two Rival Students【思维】
  • 原文地址:https://www.cnblogs.com/jkxsz2333/p/9492007.html
Copyright © 2011-2022 走看看