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

设计网站的步骤wordpress怎么换主题

设计网站的步骤,wordpress怎么换主题,网站标ico怎么做,什么是网络营销总体环境因素目录 一.问题导入 二.什么是位图? 2.1如何确定目标数在哪个比特位? 2.2如何存放高低位 2.3位图模拟代码实现 2.3.1如何标记一个数 2.3.2如何重置标记 2.3.3如何检查一个数是否被标记 整体代码实现 标准库的Bitset 库中的bitset的缺陷 简单应用 一.问题导入 这道…目录 一.问题导入 二.什么是位图? 2.1如何确定目标数在哪个比特位? 2.2如何存放高低位 2.3位图模拟代码实现 2.3.1如何标记一个数 2.3.2如何重置标记 2.3.3如何检查一个数是否被标记 整体代码实现 标准库的Bitset 库中的bitset的缺陷 简单应用 一.问题导入 这道题直接使用遍历,效率太差,不推荐使用; 第二种方法就是先排序二分查找:肯呢个有些人会觉得,排序的代价太大了;其实不然,我们只需要排序一次那么接下来的查找就好办了; 对于二分查找,效率是O(logn),根据2^101024,那2^30的数量级就是10^9,就已经上升到亿了,2^32大约就是40亿;所以我们使用二分在40亿个数中查找一个数最多只需要查找32次就可以了,效率是相当客观的; 那么问题来了:我们排序的数据是在内存中的,但是我们能在内存中直接开出40亿个整形吗?来计算一下; 答案肯定是不行的;1GB1024MB1024*1024KB1024*1024*1024B(B是字节),10^9量级大约等于10亿多字节;一个整形4字节,40亿个整形就是16*10^9字节,相当于是16亿G; 所以40亿个整数是无法直接放到内存中的,只能放到硬件文件中,而二分查找只能堆内存中的数组中的有序数据进行查找; 针对上述的空间问题,我们可以使用位图思想来实现; 二.什么是位图? 我们都知道一个字节占8个比特位,每个比特位上储存的是二进制数0和1,那我们就可以在每个比特位上根据1或0,来判断是否存在一个数; 2.1如何确定目标数在哪个比特位? 这个问题其实并不难,我们采用无符号整形构造位图,一个整形占4字节,也就是32个比特位,那这样一个整形中我就可以标记32个数; 那如果我要标记35呢? 第一个整形可以标记的数是0-31,第二个整形可以标记的数是31-63......通过观察我们可以得到结论:35在第二个整形中,在第4个比特位也就是下标为3; 结论:N在第N/32个整形中,所在比特位的下标为N%32; 2.2如何存放高低位 我们都知道二进制数排列是从低位向高位的,而按位左移也是从低位向高位的; 同样的在位图中每个整形的存储方式也是如此;那么我们可以推断数值在位图中存储形态; 我们来分析一下: 首先,我要标记一个数1,这个数在第1个整形中,所占比特位下标为1;然后我们在看看2是在哪里标记的;2同样在第一个整形中,比特位下标为2,我们来看比特位高低位分布,2是不是在1的左边; 在一个数的比特位中,高位数的值大于低位数的值; 所以左边存储的是较大的数;右边存储的是较小的数; 2.3位图模拟代码实现 我们先来把整体框架来实现一下: template size_t N//非类型模板参数N:一共有多少个数 class bitset { public:bitset():_bs(ceil(N/32.0))//根据模版的N开整形空间{}void set(int n);//标记数void reset(int n);//重置标记bool test(int n);//检查该数是否标记private:vectorint_bs; //使用变长数组模拟 }; 2.3.1如何标记一个数 现在如果我们要标记一个数,那我们需要先确定这个数在第几个整形中和第几个比特位;i是所在整形的下标,j是所在比特位的下标: iN/32; jN%32; 我们通常是将1左移j位然后或上_bs[i]; template size_t N//非类型模板参数N:一共有多少个数 class bitset { public:bitset():_bs(ceil(N/32.0))//根据模版的N开整形空间:(ceil是向上取整){}void set(int n) {int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] | 1 j; }void reset(int n);bool test(int n);//检查该数是否标记private:vectorint_bs; //使用变长数组模拟 }; 2.3.2如何重置标记 我们只需要将该比特位上~(1j)即可; template size_t N//非类型模板参数N:一共有多少个数 class bitset { public:bitset():_bs(ceil(N/32.0))//根据模版的N开整形空间:(ceil是向上取整){}void set(int n) {int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] | 1 j; }void reset(int n) {int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] ~(1 j); }bool test(int n);//检查该数是否标记private:vectorint_bs; //使用变长数组模拟 }; 2.3.3如何检查一个数是否被标记 判断一个比特位是否是1:将该比特位1,如果是1那就是1,如果是0那就是0; template size_t N//非类型模板参数N:一共有多少个数 class bitset { public:bitset():_bs(ceil(N/32.0))//根据模版的N开整形空间:(ceil是向上取整){}void set(int n) {int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] | 1 j; }void reset(int n) {int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] ~(1 j); }bool test(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位return _bs[i] (1 j); }private:vectorint_bs; //使用变长数组模拟 }; 整体代码实现 #includeiostream #includevector #includeBitset using namespace std; namespace bit {template size_t Tclass bitset{public:bitset():_bs(ceil(T/32.0)){}void set(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] | 1 j;}void reset(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] ~(1 j); }bool test(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位return _bs[i] (1 j); }private:vectorint_bs; }; } 标准库的Bitset 其中最核心的就是set和reset;其他的了解即可; 库中的bitset的缺陷 我们模拟实现的bitset底层是使用的vector,而vector的空间来自堆上;这就意味着,我们开一个比较大的空间时bitset的大小是不变的;一直都是vectorint的大小; 我们来验证一下: 结果一直都是32;为什么是32呢;根据我们在前面Vector的模拟实现可以得知,32是多个指针所占的内存空间; 那标准库中的bitset是什么样的呢? 标准库中的bitset底层是使用静态数组实现的;那么这就意味着空间是在堆栈上开辟的;其实堆栈是很小的,所以当我们开出一块很大的空间的时候容易出现问题; 所以当数据量十分巨大的时候我们尽量使用自己构造的bitset; 另外就是当我们使用我们的bitset-1bs时,是可以开出很大的空间的; 但是库中的bitset不支持此操作; 简单应用 这道题是有100亿个数,并且要统计次数,有效的次数就是0,1,2,3;正好占2个比特位,可以使用两个比特位来表示出现的次数; 这道题就是要是使用两个位图协同进行标记; 具体思路:封装两个位图-twoset,底层是bitset1e10bs1,bitset1e10bs2;分别代表n出现次数的两个比特位; 代码实现: #includeiostream #includevector #includeBitset using namespace std; namespace bit {template size_t N class bitset{public:bitset():_bs(ceil(N/32.0)) {}void set(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] | 1 j;}void reset(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位_bs[i] ~(1 j); }bool test(int n){int i n / 32;//找到所在整形的下标int j n % 32;//找到所在整形中对应的比特位return _bs[i] (1 j); }private:vectorint_bs; };template size_t Tclass twoset{public:twoset() default;void set(size_t n){//00-01if (!bs1.test(n) !bs2.test(n)){bs2.set(n);}else if (!bs1.test(n) bs2.test(n))//01-10{bs1.set(n);bs2.reset(n);}else//10-11{bs2.set(n);}}int get_count(int n){return bs1.test(n)*2 bs2.test(n);}private:bitsetTbs1; bitsetTbs2; };}我的博客即将同步至腾讯云开发者社区邀请大家一同入驻https://cloud.tencent.com/developer/support-plan?invite_code3te3qaa7daww8 
文章转载自:
http://www.morning.c7500.cn.gov.cn.c7500.cn
http://www.morning.ddfp.cn.gov.cn.ddfp.cn
http://www.morning.rfwkn.cn.gov.cn.rfwkn.cn
http://www.morning.brxzt.cn.gov.cn.brxzt.cn
http://www.morning.yxkyl.cn.gov.cn.yxkyl.cn
http://www.morning.cfqyx.cn.gov.cn.cfqyx.cn
http://www.morning.zdgp.cn.gov.cn.zdgp.cn
http://www.morning.qwhbk.cn.gov.cn.qwhbk.cn
http://www.morning.hmqmm.cn.gov.cn.hmqmm.cn
http://www.morning.ndfwh.cn.gov.cn.ndfwh.cn
http://www.morning.npkrm.cn.gov.cn.npkrm.cn
http://www.morning.ttshf.cn.gov.cn.ttshf.cn
http://www.morning.klzdy.cn.gov.cn.klzdy.cn
http://www.morning.lsjgh.cn.gov.cn.lsjgh.cn
http://www.morning.rqkk.cn.gov.cn.rqkk.cn
http://www.morning.prysb.cn.gov.cn.prysb.cn
http://www.morning.sxfnf.cn.gov.cn.sxfnf.cn
http://www.morning.bssjz.cn.gov.cn.bssjz.cn
http://www.morning.dphmj.cn.gov.cn.dphmj.cn
http://www.morning.wylpy.cn.gov.cn.wylpy.cn
http://www.morning.kcyxs.cn.gov.cn.kcyxs.cn
http://www.morning.stfdh.cn.gov.cn.stfdh.cn
http://www.morning.wjndl.cn.gov.cn.wjndl.cn
http://www.morning.lltdf.cn.gov.cn.lltdf.cn
http://www.morning.spkw.cn.gov.cn.spkw.cn
http://www.morning.bpwfr.cn.gov.cn.bpwfr.cn
http://www.morning.kfjnx.cn.gov.cn.kfjnx.cn
http://www.morning.tdhxp.cn.gov.cn.tdhxp.cn
http://www.morning.dqxnd.cn.gov.cn.dqxnd.cn
http://www.morning.dzgyr.cn.gov.cn.dzgyr.cn
http://www.morning.51meihou.cn.gov.cn.51meihou.cn
http://www.morning.qjfkz.cn.gov.cn.qjfkz.cn
http://www.morning.ptslx.cn.gov.cn.ptslx.cn
http://www.morning.lgqdl.cn.gov.cn.lgqdl.cn
http://www.morning.qxlhj.cn.gov.cn.qxlhj.cn
http://www.morning.bxqpl.cn.gov.cn.bxqpl.cn
http://www.morning.lkgqb.cn.gov.cn.lkgqb.cn
http://www.morning.fldk.cn.gov.cn.fldk.cn
http://www.morning.jhswp.cn.gov.cn.jhswp.cn
http://www.morning.thjqk.cn.gov.cn.thjqk.cn
http://www.morning.nhgfz.cn.gov.cn.nhgfz.cn
http://www.morning.slkqd.cn.gov.cn.slkqd.cn
http://www.morning.yrpg.cn.gov.cn.yrpg.cn
http://www.morning.ryrpq.cn.gov.cn.ryrpq.cn
http://www.morning.kqqk.cn.gov.cn.kqqk.cn
http://www.morning.sdhmn.cn.gov.cn.sdhmn.cn
http://www.morning.tkqzr.cn.gov.cn.tkqzr.cn
http://www.morning.clbzy.cn.gov.cn.clbzy.cn
http://www.morning.hpnhl.cn.gov.cn.hpnhl.cn
http://www.morning.ruyuaixuexi.com.gov.cn.ruyuaixuexi.com
http://www.morning.xmjzn.cn.gov.cn.xmjzn.cn
http://www.morning.wxfgg.cn.gov.cn.wxfgg.cn
http://www.morning.wjlnz.cn.gov.cn.wjlnz.cn
http://www.morning.kjkml.cn.gov.cn.kjkml.cn
http://www.morning.btgxf.cn.gov.cn.btgxf.cn
http://www.morning.qrwjb.cn.gov.cn.qrwjb.cn
http://www.morning.krqhw.cn.gov.cn.krqhw.cn
http://www.morning.bctr.cn.gov.cn.bctr.cn
http://www.morning.qkgwz.cn.gov.cn.qkgwz.cn
http://www.morning.jhfkr.cn.gov.cn.jhfkr.cn
http://www.morning.simpliq.cn.gov.cn.simpliq.cn
http://www.morning.tsnmt.cn.gov.cn.tsnmt.cn
http://www.morning.pqkrh.cn.gov.cn.pqkrh.cn
http://www.morning.rtjhw.cn.gov.cn.rtjhw.cn
http://www.morning.xqxrm.cn.gov.cn.xqxrm.cn
http://www.morning.bnfsw.cn.gov.cn.bnfsw.cn
http://www.morning.c7501.cn.gov.cn.c7501.cn
http://www.morning.yrxcn.cn.gov.cn.yrxcn.cn
http://www.morning.gjws.cn.gov.cn.gjws.cn
http://www.morning.kcnjz.cn.gov.cn.kcnjz.cn
http://www.morning.sqmlw.cn.gov.cn.sqmlw.cn
http://www.morning.cftkz.cn.gov.cn.cftkz.cn
http://www.morning.ygbq.cn.gov.cn.ygbq.cn
http://www.morning.zhqfn.cn.gov.cn.zhqfn.cn
http://www.morning.mwjwy.cn.gov.cn.mwjwy.cn
http://www.morning.ttdxn.cn.gov.cn.ttdxn.cn
http://www.morning.hpprx.cn.gov.cn.hpprx.cn
http://www.morning.fkmrj.cn.gov.cn.fkmrj.cn
http://www.morning.qrhh.cn.gov.cn.qrhh.cn
http://www.morning.nwjzc.cn.gov.cn.nwjzc.cn
http://www.tj-hxxt.cn/news/248393.html

相关文章:

  • 网站前端建设90设计供稿平台任务
  • 东城做企业网站多少钱选择合肥网站建设
  • 便宜的网站空间网站后台内容管理系统
  • 湘潭做网站 搜搜磐石网络制作公司网站哪个好
  • 网站做qq发送链接流感吃什么药最好
  • 做网站推广的公司未备案域名
  • 云酒店网站建设米各庄网站建设
  • 网站开发工具 下载手机百度安装下载
  • 中国智慧城市建设门户网站市北区网站建设
  • 网站开发公司怎么查询电脑制作视频的软件有哪些
  • 视频网站开发方法淘宝优惠券网站怎么做的
  • 网站弹出一张图怎么做代码wordpress 邀请码
  • 阿里云怎么做淘宝客网站开发板原理图
  • 网站测速潍坊网站建设公司排名
  • 哪个网站上可以做外贸郴州seo推广
  • 爱做网站yeele电商网站开发 报价
  • 郑州正规公司网站建设服务外贸网站 自建
  • 销售网站建设赚钱吗网站推广案例分析
  • 广州代做公司网站北京专门做seo
  • 网站建设销售的技巧话语免费公司建站
  • 假电影网站做注册兰州新区建设厅网站
  • 上海网站建设 知名觉哪个网站能帮助做路书
  • 济南专门做网站的公司建站工具 开源
  • 大连的网站设计公司电话免费个人简历电子版填写
  • 贵州网站开发公司中小企业网站制作价格
  • 哪些网站seo做的好百度电话号码查询平台
  • 山西做网站建设的平台软件工程研究生学校排名
  • 最好的书籍设计网站家政公司
  • 商丘做网站需要多少钱网站建设mfdos
  • 建设网站需要哪些手续旅游网站建设方案之目标