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

遵义市汇川区建设厅网站网站建设的费用计什么科目

遵义市汇川区建设厅网站,网站建设的费用计什么科目,佳木斯网站网站建设,苏州企业网站建站系统文章目录 前言丢失的数字两整数之和只出现一次的数字II消失的两个数字总结 前言 上一篇博客#xff0c;我们已经把位运算的基础知识#xff0c;以及基本运算都掌握啦 上次的习题还是让人意犹未尽#xff0c;今天我们来尝试一下难一点的题目 位运算熟练起来真的让人觉得做题是… 文章目录 前言丢失的数字两整数之和只出现一次的数字II消失的两个数字总结 前言 上一篇博客我们已经把位运算的基础知识以及基本运算都掌握啦 上次的习题还是让人意犹未尽今天我们来尝试一下难一点的题目 位运算熟练起来真的让人觉得做题是一种享受 fellow me 丢失的数字 丢失的数字 思路 少了一个数字给他找回来不就好了吗 让我想到直接对数组 按位异或 一遍 然后再对 0-n 按位异或一遍出现两次的都消消乐 剩下的就是我们要找的数字 class Solution { public:int missingNumber(vectorint nums) {int ans 0;for(auto x : nums){ans ^ x; // 按位异或当前数组}for(int i 0; i nums.size(); i){ans ^ i; // 重新按位异或一遍 0-n}return ans;} };两整数之和 两整数之和 思路 乍一看不让我用运算方法那不是完蛋了吗 但仔细想想这不是学了位运算前面了解到按位异或^是无进制加法按位与是进位 其实可以组合起来使用我们先算出无进位相加的结果然后再找出进位给他加上再如此反复循环直到没有进位 class Solution { public:int getSum(int a, int b) {while(b ! 0){int x a ^ b; // 无进位相加// 这里无符号 是防止溢出 unsigned int cur (unsigned int) (a b) 1; // 找出进位a x;b cur;}return a;} };就这么几行想明白了还是很简单的 只出现一次的数字II 只出现一次的数字II 思路 一眼hash直接秒了但是题目要求常数级空间。。。。。 设要找的数位 ret 由于整个数组中需要找的元素只出现了「一次」其余的数都出现的「三次」因此我们可以根据所有数的「某一个比特位」的总和 %3 的结果快速定位到 ret 的「一个比特位上」的值是0 还是 1 这样我们通过 ret 的每一个比特位上的值就可以将 ret 给还原出来 class Solution { public:int singleNumber(vectorint nums) {int ret 0;for(int i 0; i 32; i){int sum 0;for(auto x : nums){if(((x i) 1) 1) // 判断当前比特位{sum; // 累积个数}}sum % 3;if(sum 1) // 符合条件就把ret当前的比特位置为 1{ret ret | 1 i;}}return ret;} };做完发现位运算真好奇妙 消失的两个数字 消失的两个数字 最后一题hard难度结尾吧 思路 缺了两个数字想到前面热乎的缺一个数字我们可以按位异或两遍给他找出来但是找出来的是两个数字的异或 所以我们还要处理这两个数字的异或分解他们又想到我们上一次做过的两个只出现一次的数字 好像就是两个题目的融合才让他到了hard的难度 class Solution { public:vectorint missingTwo(vectorint nums) {int ans 0;for(auto x : nums)ans ^ x;for(int i 1; i nums.size() 2; i)ans ^ i;// 现在找到了两个数字的异或int x 0, y 0;ans ans (-(long long)ans); // 提起ans二进制最右侧的 1for(auto i : nums) // 分组异或 { if((i ans) ans)x ^ i;elsey ^ i;}for(int i 1; i nums.size() 2; i)// 分组异或{if((i ans) ans)x ^ i;elsey ^ i;}return {x, y};} };prefect 位运算完美收官 总结 今天通过几道位运算题目巩固了位运算的应用技巧 丢失的数字 利用异或性质两次异或数组和0~n的数出现两次的抵消剩下的即为缺失数。两整数之和 通过异或无进位加法和与运算左移进位模拟加法循环处理进位直至为零注意用unsigned避免溢出。只出现一次的数字II 统计每一位1的个数模3后确定目标数各位的值逐位组合得到结果。消失的两个数字 结合异或和分组思想先找到两数异或结果提取最右1进行分组分别异或数组和完整序列得到两数。 心得 位运算题目需灵活运用位操作性质如异或消重、与运算找进位、按位统计等 通过分解问题、逐步处理能将复杂问题简化然后逐个击破 今天的内容就到这里啦不要走开小编持续更新中~~~~
http://www.zqtcl.cn/news/396309/

相关文章:

  • 三维建设项目管理网站免费下载网站模板
  • 淘客联盟做任务网站页面设计所遵循的原则有哪些
  • 怎么建设收费网站行业网站建站
  • 织梦园模板网站自适应网站建设服务哪家好
  • 优秀专题网站恩施北京网站建设
  • 常用网站后缀企业网站用什么域名
  • 网站建设定制公众号小程序51ppt模板免费下载完整版免费ppt
  • 个人网站工商备案济南建网站app
  • 佛山网站建设公司哪家性价比高2018建设网站
  • 公司建一个网站建设工程教育网网址
  • 一级a做爰片免播放器网站推广渠道包括哪些
  • 南京市建设工程档案馆网站新乡市四合一网站建设
  • 网站建设制作周期咸宁网站设计制作
  • 网站推广营销联系方式南宁做网站推广的公司
  • 深圳网站建设公司元红河网站建设代理
  • 商丘河南网站建设Wordpress加720云vr
  • 上海网站建设公司网站建设网络推广费用高吗
  • 南宁学做网站百度电脑版
  • 公司网站建设工作通知怎样看一个网站做的网络广告
  • 普洱市住房和城乡建设局网站最有创意的广告设计
  • 网站开发者常见问题网站建设鸿儒
  • 米方科技网站建设个人可以做外贸网站吗
  • 如何做别人网站镜像自建wordpress主题
  • 临沂网站制作平台网站开发的软硬件环境
  • 假冒中国建设银行的网站网站开发 避免 字段变化 代码
  • 如何取消网站备案搜索seo怎么优化
  • 网站备案系统验证码出错网站的电子画册怎么做
  • 厦门企业网站建设方案企业网站硬件设计
  • 做网站推广的方法有哪些高级服装定制网站
  • 网站的百度地图怎么做的广告设计与制作发展趋势