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

防止网站被克隆流量购买网站

防止网站被克隆,流量购买网站,西安网站建设招商,云南省建设厅标准员网站审题: 数组中除了答案元素只出现一次外,其他元素都会出现三次,我们需要找到并返回答案元素 思路: 由于现在会出现三次,所以利用异或运算符的方法就会失效。而所有数据都在32位二进制范围内,所以我们采用依次…

审题:

数组中除了答案元素只出现一次外,其他元素都会出现三次,我们需要找到并返回答案元素

思路:

由于现在会出现三次,所以利用异或运算符的方法就会失效。而所有数据都在32位二进制范围内,所以我们采用依次确定二进制位的方法来计算

方法:依次确定二进制位

对于只出现一次的数据,它的第i位二进制数可能是0或1.

对于出现三次的数据,它的第i位二进制数据可能是0/1,但是若将他们加起来就一定是3的倍数(0或3)

而如果我们对数组中所有元素第i位二进制数的和除以3并取余数就可得到答案第i位的二进制数,然后将这位给到答案上即可

解题:

外层循环:目的是进行不同位数答案的计算与赋值

内层循环:将nums数组所有元素的第i位(i从0开始)加起来给到total

if语句:当余数是1说明我们答案在当前位数的二进制数是1,需要把1给到答案的第i位

若余数不是1,说明我们答案在当前位数的二进制数是0,由于我们答案初始化为0(相当于32为二进制数都是0),所以0就不用我们去赋值了

关键代码:

1.如何得出第i位二进制数的值?

首先把数据右移i位,然后利用位与运算和1进行运算

因为1的前面31位都是0,所以不管e前面31位是多少,最后都会变成0。也就是需要比较的只有第32位,我们把第i位都移动到32位,如果该位大小为1,那么和1进行位与操作就可以得出结果为1,否则为0.这样就实能将对应位大小提取出来

2.如何将答案的第i位赋值为1?

首先把1左移i位,然后与答案进行位或运算

因为1左移i位后,其他位数都为0,位或操作的性质决定了我们不会改变答案的其他位的值。

此时因为答案第i位是0,而我们左移后的“1”的第i位是1了,根据位或性质,第i位运算出来就是1,又因为其他位不变,所以成功在答案其他位不变的情况下实现了赋值1

补充:

位与运算符:&

当两个二进制数对应位的值都是1,那么运算得出1,否则为0

eg:0011 & 1100 -》0000

位或运算符:|

当两个二进制数对应位的值有一个是1,那么就得出1,否则为0

eg:0011 & 1100 ——》1111

137. 只出现一次的数字 II - 力扣(LeetCode)

http://www.15wanjia.com/news/9594.html

相关文章:

  • 安卓盒子 做网站seo培训课程
  • 安徽住房和城乡建设厅网站爱站网挖掘关键词
  • 做微商哪个网站好seo管理系统
  • 代刷网站是怎么做的微博推广费用一般多少
  • 沈阳便宜做网站的seo咨询师招聘
  • 银川做网站的公司百度网页浏览器
  • 做的比较好的p2p网站2024年最新一轮阳性症状
  • wordpress怎么生成目录seo搜索优化专员招聘
  • 义乌网站公司产品推广平台有哪些
  • 邢台网站建设网络公司网络广告营销策略
  • 建设银行信用卡管理中心网站手机端搜索引擎排名
  • 网站建设交流材料seo专员工资一般多少
  • wordpress媒体库插件seo完整教程视频教程
  • 赣州市seo的中文含义是
  • 外国人做那个的视频网站靠谱的推广平台有哪些
  • 网站上传为什么大小限制王通seo赚钱培训
  • 做异地送花网站北京网站优化专家
  • 公司建网站有免费的吗百度搜索推广收费标准
  • 怎么做网站流量赚钱网络营销外包顾问
  • 网站建设功2022年关键词排名
  • 百度云分享tp响应式网站开发搜索引擎优化怎么做
  • 本网站立足于海外服务器定制网站开发公司
  • wordpress自定义文章流程徐州seo建站
  • 美食网站建设的可行性seo搜索引擎优化包邮
  • 上海seo网站优化搜索引擎营销的模式有哪些
  • 营销网站建设免费二级域名注册申请
  • 电商之家官网济南seo网站优化
  • 境外电商平台有哪些seo系统培训课程
  • 深圳信科做网站seo网站优化技术
  • 多媒体网站开发实战网站优化外包找谁