• queue怎么用咧↓↓↓


    queue(队列)

    • 定义:queue <int> a;

    • 插入队尾:a.push(x);

    • 查询队尾:a.back();

    • 查询队首:a.front();

    • 删除队首:a.pop();

    • 查询长度:a.size();

    • 判断队列为空:q.empty()

    • 清空只能慢慢pop

    priority_queue(优先队列/堆)

    基本操作:

    q.empty()      

    如果队列为空,则返回真

    q.pop()    

    删除对顶元素,删除第一个元素

    q.push()        

    加入一个元素

    q.size()      

    返回优先队列中拥有的元素个数

    q.top()     

    返回优先队列中有最高优先级的元素 在默认的优先队列中,优先级高的先出队。在默认的int型中先出队的为较大的数

    声明方式:

    priority_queue<int> q;     

    //通过操作,按照元素从小到大的顺序出队 priority_queue<int,vector<int>, greater<int> > q;    

    //通过操作,按照元素从大到小的顺序出队 (less<int>)

    结构体声明方式:(和sort一样)

    struct node {     
      int x, y;     
      bool operator < (const node &a)const
      {         
        return x > a.x;    //结构体中,x小的优先级高     
      }
    };

    priority_queue<node>q; //定义方法

    //在该结构中,y为值, x为优先级。

    //通过自定义operator<操作符来比较 元素中的优先级。

    //在重载”<”时,最好不要重载”>”, 可能会发生编译错误

  • 相关阅读:
    【转】Aspose.Cells读取excel文件
    sencha treestore 取消自动加载数据
    百度地图js根据经纬度定位和拖动定位点
    sencha gridpanel checkbox 复选框的勾选 以及和单机行冲突
    c# tcp备忘及networkstream.length此流不支持查找解决
    小程序view排版
    .net+mvc,ueditor
    爬虫BS4—淘女郎
    爬虫手动流程
    python web cgi
  • 原文地址:https://www.cnblogs.com/ljy-endl/p/11260526.html
Copyright © 2020-2023  润新知