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

自建免费网站游戏代理好做吗

自建免费网站,游戏代理好做吗,网站制作需要多长时间,对网站建设课程的心得体会一.题目描述 消失的两个数字 二.思路分析 本题难度标签是困难#xff0c;但实际上有了只出现一次的数字iii这道题的铺垫#xff0c;本题的思路还是很容易想到的。 温馨提示#xff1a;阅读本文前可以先查看我的【位运算】专栏的第一篇文章#xff0c;其中包含位运算这类…一.题目描述 消失的两个数字 二.思路分析 本题难度标签是困难但实际上有了只出现一次的数字iii这道题的铺垫本题的思路还是很容易想到的。 温馨提示阅读本文前可以先查看我的【位运算】专栏的第一篇文章其中包含位运算这类题型的常用技巧以及前面这道题的讲解。 言归正传这道题最容易想到的解法应该是哈希表遍历数组用哈希表记录每个元素出现的次数。然后再遍历哈希表出现次数为0的元素就是我们要找的答案。但是空间复杂度为O(n)不符合题目要求。 下面介绍位运算的方法 若数组的长度为n则数组缺少了[1, n2]中的两个数。 先将从1到n2的所有整数异或在一起然后再异或数组的每个元素。异或的特点是“消消乐”即两个相同的数异或会变成0故最终的结果tmp相当于这两个缺失的数异或。 这两个数既然不同那么它们至少有一个比特位不一样我们可以遍历tmp的每一个比特位如果它是1则说明两个数的这一位不相同异或的规则是相异为1记录这一位置。 随后我们根据这一比特位的不同将[1,n2]的整数以及数组的所有元素划分为两组分别进行异或相同的元素会消去最终得到的就是我们要找的两个数。 三.代码实现 class Solution { public:vectorint missingTwo(vectorint nums) {int n nums.size();int tmp 0;//将所有数异或在一起for (int i 1; i n 2; i){tmp ^ i;}for (auto e : nums){tmp ^ e;}//找出缺失的两个数字哪一比特位不相同int pos 0;for (int i 0; i 31; i){if (((tmp i) 1) 1){pos i;break;}}//根据这一比特位不同,划分为两组分别异或int ret1 0, ret2 0;for (int i 1; i n 2; i){if (((i pos) 1) 1){ret1 ^ i;}else{ret2 ^ i;}}for (auto e : nums){if (((e pos) 1) 1){ret1 ^ e;}else{ret2 ^ e;}}return {ret1, ret2};} }; 欢迎进入我的主页翻阅算法专栏学习更多有趣的算法。
http://www.hkea.cn/news/14510833/

相关文章:

  • 建设工程交易网站网站添加属性
  • .tv可以做门户网站不wordpress数据库主机填什么
  • 济宁市中网站建设咋么做网站
  • 软件下载站网站源码免费网站策划 ppt
  • 规范网站维护 建设 管理国内flash网站
  • 建设监理有限责任公司网站wordpress 本地图片 图床
  • 官方网站建设公游仙移动网站建设
  • 免费网站新域名一对一视频网站建设
  • 数码网站模板曲阜做网站哪家好
  • 微网站在哪个平台上搭建好 知乎免费com域名注册网站
  • 家谱网站怎么做有那个网站做外贸
  • php做网站都需要学什么网站套程序
  • 有自己的网站如何做淘宝客html网页模板简洁
  • 网站布局设计理由建e网全景图合成教程
  • 马云不懂技术如何做网站长沙网站建设zh68
  • 平台网站可以做第三方检测报告大数据营销优势
  • 网站跟客户端推广怎么做鄱阳网站建设
  • 建设网站项目计划书使用vue做的网站有哪些
  • 客户网站开发全流程图wordpress 链接 跳转
  • 网站做常规优化昆明营销型网站建设
  • 四川代理网站建设的公司湖南seo优化推荐
  • 企业建设网站的好处现在还有什么推广渠道
  • 南昌网站开发建设黄骅贴吧二手房买卖
  • 如何建造网站视频教程成都分销网站建设
  • 网站建设发帖论坛社区wordpress文本编辑增强
  • 国外网站推广如何做金山专业做网站
  • 长沙网络公司网站上海外贸学院现在是什么学校
  • 微网站的搭建用jsp做的网站首页
  • 崇信县门户网站首页电商商城网站开发框架
  • 网站建设与维护 实验报告心得wordpress 薄荷主题