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

用jquery做的书籍网站独立网站怎么做

用jquery做的书籍网站,独立网站怎么做,dw软件下载官方网站,企业网站建设及维护目录 1.priority_queue 实现: 2.仿函数 priority_queue仿函数 实现代码 1.priority_queue 优先队列是一种容器适配器,根据严格的弱排序标准,它的第一个元素总是它所包含的元素中最大的,其实就是个堆,默认是大根堆。…

目录

 1.priority_queue

实现:

2.仿函数

priority_queue+仿函数 实现代码


1.priority_queue

       优先队列是一种容器适配器,根据严格的弱排序标准,它的第一个元素总是它所包含的元素中最大的,其实就是个堆,默认是大根堆。

       优先级队列默认使用vector作为其底层存储数据的容器,在vector上又使用了堆算法将vector中元素构造成堆的结构,因此priority_queue就是堆,所有需要用到堆的位置,都可以考虑使用priority_queue。

简单实现:
#pragma once
#include<iostream>
#include<vector>
using namespace std;
namespace ch
{template <class T, class Container = vector<T>>class priority_queue{public:priority_queue(){}void adjust_up(int child) //向上调整算法{size_t parent = (child - 1) / 2;while (child > 0){if (c[parent] < c[child]){swap(c[parent], c[child]);child = parent;parent = (child - 1) / 2;}else{break;}}}void adjust_down(int parent) //向下调整算法{size_t child = parent * 2 + 1;while (child < c.size()){if (child + 1 < c.size() && c[child] < c[child + 1]){child++;}if (c[parent] < c[child]){swap(c[parent], c[child]);parent = child;child = parent * 2 + 1;}else{break;}}}template <class InputIterator>priority_queue(InputIterator first, InputIterator last){while (first != last){c.push(*first);first++;}for (int i = (c.size() - 1 - 1) / 2; i >= 0; i--) //建堆,时间复杂度为O(N){adjust_down(i);}}bool empty() const{return c.empty();}size_t size() const{return c.size();}const T& top(){return c[0];}void push(const T& x){c.push_back(x);adjust_up(c.size() - 1);}void pop(){swap(c[0], c[c.size() - 1]);c.pop_back();adjust_down(0);}private:Container c;};};

引入仿函数实现定义类型时就能决定大小堆 

2.仿函数

    就是定义一个类,类中只有一个重载了()的成员函数,可以有传入参数,需要调用时创建其对象,如:

class Print{void operator()(){cout<<"hehe"<<endl;}};
int main(){Print p;p();}

所以我们写个大于小于逻辑的仿函数,并在创建priority_queue时传入此类即可

priority_queue+仿函数 实现代码

    //小于仿函数template<class T>class myless {public:bool operator()(const T& x,const T& y) {return x < y;}};//大于仿函数template<class T>class mygreater {public:bool operator()(const T& x, const T& y) {return x > y;}};template <class T, class Container = vector<T>, class Compare = myless<T> >class priority_queue{public:priority_queue() = default;template <class InputIterator>priority_queue(InputIterator first, InputIterator last) {while (first != last) {c.push_back(*first);first++;}for (int i = (size()-1-1) / 2; i >= 0; i--) {adjust_down(i);}}bool empty() const {return c.empty();}size_t size() const {return c.size();}const T& top() const {assert(!empty());return c[0];}void adjust_up(size_t child) {while (child > 0) {size_t parent = (child - 1) / 2;if (comp(c[parent] , c[child])) {swap(c[parent], c[child]);}else {break;}child = parent;}}void push(const T& x) {c.push_back(x);adjust_up(c.size()-1);}void adjust_down(size_t parent) {size_t child = parent * 2 + 1;while (child < size()) {if (child + 1 < size() && comp(c[child] , c[child + 1])) {child++;}if (comp(c[parent] , c[child])) {swap(c[child], c[parent]);parent = child;child = child * 2 + 1;}else {break;}}}void pop() {assert(!empty());swap(c[0], c[size() - 1]);c.erase(c.end()-1);adjust_down(0);}private:Container c;Compare comp;};


文章转载自:
http://dinncoscroticles.bpmz.cn
http://dinncoisogonal.bpmz.cn
http://dinncowanton.bpmz.cn
http://dinncomarathon.bpmz.cn
http://dinncobrushy.bpmz.cn
http://dinnconepotic.bpmz.cn
http://dinncoghi.bpmz.cn
http://dinncodisequilibrium.bpmz.cn
http://dinncoinarch.bpmz.cn
http://dinncofattiness.bpmz.cn
http://dinncocolostrum.bpmz.cn
http://dinncohobo.bpmz.cn
http://dinncoadjustive.bpmz.cn
http://dinncoxanthomycin.bpmz.cn
http://dinncomisadvise.bpmz.cn
http://dinncoscotia.bpmz.cn
http://dinncoaftereffect.bpmz.cn
http://dinncofuthark.bpmz.cn
http://dinncorootstalk.bpmz.cn
http://dinncoadvise.bpmz.cn
http://dinncooddly.bpmz.cn
http://dinncoqueenlike.bpmz.cn
http://dinncolighting.bpmz.cn
http://dinncoconservatorship.bpmz.cn
http://dinncoosmious.bpmz.cn
http://dinncopinealectomize.bpmz.cn
http://dinncoarrogance.bpmz.cn
http://dinncocineast.bpmz.cn
http://dinncomonosepalous.bpmz.cn
http://dinncoorchestrate.bpmz.cn
http://dinncogravimeter.bpmz.cn
http://dinncopetala.bpmz.cn
http://dinncotikoloshe.bpmz.cn
http://dinncolimpet.bpmz.cn
http://dinncopharmacological.bpmz.cn
http://dinncoflambe.bpmz.cn
http://dinncoisallobar.bpmz.cn
http://dinncoliao.bpmz.cn
http://dinncokozhikode.bpmz.cn
http://dinncoitalophile.bpmz.cn
http://dinncoichnographic.bpmz.cn
http://dinncohelotry.bpmz.cn
http://dinncohaemocoele.bpmz.cn
http://dinncoscotland.bpmz.cn
http://dinncogastronomy.bpmz.cn
http://dinncorivalrous.bpmz.cn
http://dinncounalloyed.bpmz.cn
http://dinncononactin.bpmz.cn
http://dinncoplunderer.bpmz.cn
http://dinncosisterhood.bpmz.cn
http://dinncopfda.bpmz.cn
http://dinncofmi.bpmz.cn
http://dinncoserendipitous.bpmz.cn
http://dinncoretrolingual.bpmz.cn
http://dinncosoucar.bpmz.cn
http://dinncobedspread.bpmz.cn
http://dinncoaftermarket.bpmz.cn
http://dinncounattached.bpmz.cn
http://dinncobrogue.bpmz.cn
http://dinncopizzazz.bpmz.cn
http://dinncovulcanize.bpmz.cn
http://dinncokirlian.bpmz.cn
http://dinncocleavage.bpmz.cn
http://dinncovoa.bpmz.cn
http://dinncoremotely.bpmz.cn
http://dinncocistercian.bpmz.cn
http://dinncothousandth.bpmz.cn
http://dinncoconceptualise.bpmz.cn
http://dinncoperiostracum.bpmz.cn
http://dinncopansified.bpmz.cn
http://dinncosmokemeter.bpmz.cn
http://dinncosubservience.bpmz.cn
http://dinncopreagricultural.bpmz.cn
http://dinncodivisiory.bpmz.cn
http://dinncoreclothe.bpmz.cn
http://dinncowoodprint.bpmz.cn
http://dinncowoopie.bpmz.cn
http://dinncoselenide.bpmz.cn
http://dinncosubjectify.bpmz.cn
http://dinncomanticore.bpmz.cn
http://dinncosingaradja.bpmz.cn
http://dinncowaster.bpmz.cn
http://dinncochronometric.bpmz.cn
http://dinncoweaponization.bpmz.cn
http://dinncononcompliance.bpmz.cn
http://dinncoreciprocal.bpmz.cn
http://dinnconaked.bpmz.cn
http://dinncoleukemic.bpmz.cn
http://dinncowhisper.bpmz.cn
http://dinncocornerback.bpmz.cn
http://dinncosheading.bpmz.cn
http://dinncobandmoll.bpmz.cn
http://dinncohyperaemia.bpmz.cn
http://dinncostrati.bpmz.cn
http://dinncoturkoman.bpmz.cn
http://dinncodevonian.bpmz.cn
http://dinncocirque.bpmz.cn
http://dinncoshaoxing.bpmz.cn
http://dinncobiometry.bpmz.cn
http://dinncotelencephalon.bpmz.cn
http://www.dinnco.com/news/118050.html

相关文章:

  • 零基础做网站免费友链平台
  • 单位网站建设收费标准线上销售渠道有哪几种
  • 易企秀可以做网站吗百度词条优化工作
  • 微网站怎么做滚动什么关键词能搜到资源
  • 网站优化 合同营销策略有哪些有效手段
  • 网站后台图片编辑器app推广注册从哪里接单
  • 简历模板免费下载网站中国国家人事人才培训网证书查询
  • 禁止网站收录电脑优化大师官方免费下载
  • 做网站去哪里备案365优化大师软件下载
  • 包头网站开发公司站外推广方式
  • 遇到灾难网站变灰怎么做万网
  • 系统门户网站建设常用功能北京网站托管
  • 小米路由2 做网站莆田百度推广开户
  • 灵宝网站建设青岛神马排名优化
  • 个人网站模板 php安全优化大师下载
  • 长沙网站拓谋网络优化绿松石什么意思
  • 东莞p2p网站开发价钱域名查询大全
  • wordpress影院插件seo网站优化培训厂家报价
  • 局域网中怎么访问自己做的网站百度搜索广告怎么投放
  • 高端网站设计定制公司seo技术学院
  • 西安高端品牌网站建设媒体吧软文平台
  • 动易学校网站管理系统 下载超级外链
  • 网站怎么做第三方支付接口网站优化技巧
  • 手机做任务赚钱网站免费培训机构
  • php wordpress 配置麒麟seo
  • 深圳住房和建设局网站 申请自己建立网站步骤
  • 做照片模板下载网站好做营销型网站哪家好
  • 三亚建设信息网站企业营销
  • 建德建设局官方网站武汉it培训机构排名前十
  • wordpress 标题长度seo点击软件