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

自助网站建设费用怎样做软件开发

自助网站建设费用,怎样做软件开发,视频制作公司简介,中国前十名别墅装修公司目录 一、位图相关面试题: 二、位图的优缺点: 三、位图相关的考察题目 四、代码实现 一、位图相关面试题: 给40亿个不重复的无符号整数,没排过序,如何判断一个数是否在这40亿数中 思路一:暴力查找 思路…

目录

一、位图相关面试题:

二、位图的优缺点:

三、位图相关的考察题目

四、代码实现


一、位图相关面试题:


给40亿个不重复的无符号整数,没排过序,如何判断一个数是否在这40亿数中
 思路一:暴力查找
 思路二:排序+二分查找
 但是第二种方法对内存的要求太高,1G约等于10亿Byte,1G可存10/4个int,40 / (10 / 4)
 因此大约需要16G,但是因为空间太大,只能将这些数放在硬盘中,而二分查找只能处理内存
 中的有序数组
 思路三:每个数映射一个比特位,即位图

二、位图的优缺点:


有点:增删查改特别快
缺点:只适用于整形

三、位图相关的考察题目


 1、给定100亿个整数,找出只出现一次的整数
    还是使用位图,开两个42亿9000万个比特位的空间,第一个代表2^1,第二个代表2^0
    ,10代表出现两次及以上,00代表未出现,01代表只出现一次,因此对位图进行封装就
    可以完成任务
 2、两个文件中都有一百亿个整数,找出两者的相同的数
 3、一个文件中有100亿个整数,1G内存,找到所有出现次数不超过两次的整数
    与第一题完全类似
 

四、代码实现

#pragma once
#include <vector>namespace wjl
{template<size_t N>class bitset{public:bitset(){_bs.resize(N / 32 + 1);}//变为1void set(size_t x){size_t i = x / 32;size_t j = x % 32;//左移不一定是向左移动,只是第字节序往高字节序移动,左移的左不是方向_bs[i] |= (1 << j);}//变为0void reset(size_t x){size_t i = x / 32;size_t j = x % 32;_bs[i] &= (~(1 << j));}//是1就是真bool test(size_t x){size_t i = x / 32;size_t j = x % 32;return _bs[i] & (1 << j);}private:std::vector<size_t> _bs;};template<size_t N>class twobitsets{public:void set(size_t x){bool flag1 = _bs1.test(x);bool flag2 = _bs2.test(x);if (flag1 && !flag2){//10 -> 11_bs2.set(x);}else if (!flag1 && flag2){//01 -> 10_bs1.set(x);_bs2.reset(x);}else if(!flag1 && !flag2){//00 -> 01_bs2.set(x);}}int getcount(size_t x){bool flag1 = _bs1.test(x);bool flag2 = _bs2.test(x);if (flag1 && !flag2){return 2;}else if (!flag1 && flag2){return 1;}else if (!flag1 && !flag2){return 0;}return 3;}private:bitset<N> _bs1;bitset<N> _bs2;};
}

http://www.dtcms.com/a/581335.html

相关文章:

  • Python面向对象和方法
  • AJAX 实例详解
  • 检测图片URL是否失效
  • 网站设计专业实验室建设与wordpress集成软件
  • 15、RabbitMQ
  • ftp怎么连接网站空间高端网站制造
  • 命名空间的内联与嵌套
  • UML建模工具Enterprise Architect如何建立和执行架构标准和规范
  • 项目一:意图识别技术与实战(案例:智能政务热线意图分类与工单自动分发系统)
  • Spec-Kit 实战指南:从零到一构建“照片拖拽相册”Web App
  • 一个网站怎么做多条线路郑州市城乡建设局证书查询
  • 河南平台网站建设价位织梦商业网站内容管理系统
  • 圆桌论坛精华实录 | AI是重构运维逻辑的颠覆性革命?博睿数据与行业大咖亲授“AI+可观测性”的破局之道
  • 高并发场景下的缓存利器
  • XML 元素:解析与运用
  • LegionSpace黑客松指南(二):MCP服务开发与集成详解
  • 关于js导入Excel时,Excel的(年/月/日)日期是五位数字的问题。以及对Excel日期存在的错误的分析和处理。
  • 内网穿透的应用-摆脱局域网!Stable Diffusion3.5 结合cpolar使用更方便
  • postgresql客户端升级
  • 16openlayers加载COG(云优化Geotiff)
  • 万网做的网站咋样wordpress 用户api
  • 小白学规则编写:雷池 WAF 配置教程,用 Nginx 护住 WordPress 博客
  • 升鲜宝生鲜配送供应链管理系统---PMS--商品品牌多语言存储与 Redis 缓存同步实现
  • Spark的容错机制
  • spark性能优化2:Window操作和groupBy操作的区别
  • 用spark-md5实现切片上传前端起node模拟上传文件大小,消耗时间
  • 做网站优化竞价区别开发工具的种类及使用方法
  • Mac安装pnpm步骤以及会出现的问题
  • ofd在线预览js+springboot跳转
  • 基于SpringBoot实习管理系统的设计与实现的设计与实现