当前位置: 首页 > wzjs >正文

创新的购物网站建设爱站网关键词挖掘机

创新的购物网站建设,爱站网关键词挖掘机,适合用dedecms做的网站,wordpress的开发文档一,引言 优先级队列是队列的一种特殊形式,使得队列按照大小顺序以此出队列。实现优先级队列的模拟实现需要用到两个知识点1,队列数据的调整算法,以及仿函数。 二,调整算法 优先级队列的调整算法底层就是堆的调整算法。有向下调整和向上调整两种。具体在…

一,引言

优先级队列是队列的一种特殊形式,使得队列按照大小顺序以此出队列。实现优先级队列的模拟实现需要用到两个知识点1,队列数据的调整算法,以及仿函数。

二,调整算法


优先级队列的调整算法底层就是堆的调整算法。有向下调整和向上调整两种。具体在往期的文章中有具体的讲解:
https://blog.csdn.net/2301_81893652/article/details/146443802?spm=1001.2014.3001.5501

三,仿函数

仿函数不是函数,是一个类。类内部实现()的运算符重载,返回bool类型。具体实现如下:

template<class T>
class Less
{
public:bool operator()(const T& x, const T& y){return x < y;}
};template<class T>
class Greater
{
public:bool operator()(const T& x, const T& y){return x > y;}
};

四,priority_queue的具体实现

在队queue的基础上,通过仿函数控制升序还是降序,每次进行push操作时都在之后加上调整算法。在pop操作时也都加上调整算法。其他的接口和queue保持一致。具体实现如下:

template<class T>
class Less
{
public:bool operator()(const T& x, const T& y){return x < y;}
};template<class T>
class Greater
{
public:bool operator()(const T& x, const T& y){return x > y;}
};namespace Cao
{// 默认是大堆template<class T, class Container = vector<T>, class Compare = Less<T>>class priority_queue{public:void AdjustUp(int child){Compare com;int parent = (child - 1) / 2;while (child > 0){//if (_con[parent] < _con[child])if(com(_con[parent], _con[child])){swap(_con[child], _con[parent]);child = parent;parent = (child - 1) / 2;}else{break;}}}void push(const T& x){_con.push_back(x);AdjustUp(_con.size() - 1);}void AdjustDown(int parent){// 先假设左孩子小size_t child = parent * 2 + 1;Compare com;while (child < _con.size())  // child >= n说明孩子不存在,调整到叶子了{// 找出小的那个孩子//if (child + 1 < _con.size() && _con[child] < _con[child + 1])if (child + 1 < _con.size() && com(_con[child], _con[child + 1])){++child;}//if (_con[parent] < _con[child])if (com(_con[parent],_con[child])){swap(_con[child], _con[parent]);parent = child;child = parent * 2 + 1;}else{break;}}}void pop(){swap(_con[0], _con[_con.size() - 1]);_con.pop_back();AdjustDown(0);}const T& top(){return _con[0];}size_t size() const{return _con.size();}bool empty() const{return _con.empty();}private:Container _con;};
}

http://www.dtcms.com/wzjs/60559.html

相关文章:

  • 江苏省住房城乡建设厅网站百度关键词代做排名
  • 做网络课堂的平台有哪些网站seo关键词优化推广
  • 3340网站建设与管理制作网站建设入门
  • 怎么做网赌网站西安百度竞价代运营
  • 外贸网站一站式服务2022拉新推广平台
  • 网站做网站seo主要做哪些工作
  • 做交友网站挣钱吗网站建设设计
  • 做设计去哪个网站找素材搜索引擎优化到底是优化什么
  • 网站备案号收回网络营销
  • 建设银行滇龙行网站seo网络推广企业
  • 465端口 WordPress标题优化
  • 海澜之家网站建设的计划如何制定会员营销方案
  • 网站建站的标准挖掘关键词爱站网
  • 怎样做网站收广告费网络营销方案设计
  • 大渡口区网站建设广告优化师发展前景
  • 烟台网站建设询问企汇互联专业网络营销有哪些推广方式
  • 建网站有什么好处今日nba比赛直播
  • 网站建设应该学什么软件南京今天重大新闻事件
  • 没有网站怎么做淘宝客seo搜索引擎实战详解
  • 中国三线建设网站国家中医药管理局
  • java中类似wordpress甘肃搜索引擎网络优化
  • 网上诉讼服务平台宁波seo网页怎么优化
  • 那些网站专门做棋牌推广的长沙关键词优化费用
  • 拼客多网站多少钱可以做seo排名优化培训网站
  • 天津网站建设公司推荐关键词优化软件
  • 网站优化心得成人职业技能培训班
  • 在线制作视频的网站做网站怎么赚钱
  • 莱特币做空 网站冯耀宗seo视频教程
  • 正规品牌网站设计地址媒体邀约
  • 做外贸没有网站需要什么条件基础建站如何提升和优化