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

温州疫情最新情况seo收费标准

温州疫情最新情况,seo收费标准,2019做网站图片用什么格式,怎么判断网站是不是模板做的最近看到一个题&#xff0c;就是算一个int里面有多少个1。这个还是挺常用的&#xff0c;也不难&#xff0c;就是判断最后一位是不是1&#xff0c;然后移位&#xff0c;很快就能给答案。 int hammingWeight(int n) {int result 0;for(int i 0; i < 31; i){if(n & 1)res…

最近看到一个题,就是算一个int里面有多少个1。这个还是挺常用的,也不难,就是判断最后一位是不是1,然后移位,很快就能给答案。

    int hammingWeight(int n) {int result = 0;for(int i = 0; i < 31; i++){if(n & 1)result++;n = n >> 1;}return result;}

但是提交上去看到答案也不是很理想。

主要是内存用的不是很好。查一下这个,是有个Brian Kernighan算法,算法大概是这样的:

int hammingWeight(int n) {        while (n) {n &= (n - 1);++count;}
}

其中关键的就是这句n &= (n - 1);

也就是n = n & (n - 1);

仔细看看这个什么意思呢,关于位操作,之前其实写过一篇。C语言位操作详解:基础原理与实际应用示例-CSDN博客

 关于&,是这样的:

只有两个位都是1时,结果位才是1。
可以用来清除某一段位数据

以6为例子:

二进制是110,那么-1就是101,再&之后就是100(4)。

之后-1就是011,再&之后就是000。跳出循环。

本质就是跳过了0,每次只处理1。

再白话一点就是每次从后清掉一个1,直到清完。

相比以前要硬循环31次,确实巧妙了一些。。。

其实刚刚做的时候,就在想能不能减少循环的次数,其实如果多想几天,也许这种解法也能想到。到时候就也能青史留名啦。。。

http://www.dtcms.com/wzjs/166899.html

相关文章:

  • 哪里网站建设联系国外网站谷歌seo推广
  • 深圳建设工程交易网appseo接单平台有哪些
  • 自建网站如何赚钱高端定制网站建设
  • 貴阳建设银行网站网址大全下载到桌面
  • 网站建设项目资金申请报告苏州seo安严博客
  • 有什么做网站的公司什么软件推广效果好
  • 中山一站式营销推广平台企业网站
  • 第一个做装修的网站安顺seo
  • 电商网站开发平台一图片优化网站
  • 做qq群头像网站企业网站推广模式
  • 网站集约化建设意义aso推广
  • 制作一个网站官网今日国际新闻热点
  • 宁波建站服务深圳seo优化服务
  • 网站群建设技术方案优化推广网站排名
  • 怎么建设一个淘宝客网站seo基础入门
  • 淘宝网站开发源码营销软件排名
  • 深圳网站设计按天收费精准粉丝引流推广
  • 苏州建设工程合同备案网站优化网站seo公司
  • 设计非常漂亮的网站免费b站推广网址有哪些
  • 做小说网站做国外域名还是国内的好全国疫情排名一览表
  • 抖音营销推广怎么做seo顾问赚钱吗
  • 网站的建设方法包括什么东莞网站建设平台
  • 自己做公司网站难吗如何建立网页
  • 背景网站建设郑州网络营销策划
  • 专业做食材网站百度官网推广
  • 中信建设官方网站软件下载关键词优化推广排名
  • 大型网站一般用什么语言做的互联网推广中心
  • o2o模式的电商平台网站有哪些广安网站seo
  • php在动态网站开发中的应用研究ip网站查询服务器
  • 做配资网站友妙招链接