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

域名申请到网站建设教程哪个网站专题做的好

域名申请到网站建设教程,哪个网站专题做的好,广告设计与制作专业课程,郑州seo优化外包热狗网题目描述 给你一个整数 n #xff0c;对于 0 i n 中的每个 i #xff0c;计算其二进制表示中 1 的个数 #xff0c;返回一个长度为 n 1 的数组 ans 作为答案。 示例 代码思路 第一种方法 最简单的方法就是#xff0c;遍历然后使用python自带的bin()方法直接…题目描述 给你一个整数 n 对于 0 i n 中的每个 i 计算其二进制表示中 1 的个数 返回一个长度为 n 1 的数组 ans 作为答案。 示例 代码思路 第一种方法 最简单的方法就是遍历然后使用python自带的bin()方法直接转换为2进制然后用count去数数。 第二种方法 考虑到数的特点如果该数i为偶数那么他二进制中1的个数和他i/2的数的1的个数是一样的。 那是因为偶数的末尾是0向右边移动一位然后就变成i/2这导致1的数量不变。 如果i为奇数,那么它的二进制1的位数i-1的二进制位数1 1奇数二进制末尾为1如果把末尾的1去掉就相当于在原有基础上减1。 2减掉1后奇数就变成偶数了而偶数的二进制数又是总和它i/2是相等的这就进入了递归的环节了。 class Solution(object):def countBits(self, num):res []for i in range(num 1):res.append(self.count(i))return resdef count(self, num):if num 0:return 0if num % 2 1:return self.count(num - 1) 1return self.count(num // 2) 但是这段代码有冗余的地方因为求到偶数后要不断递归直至最后一个偶数确定1的个数而且遍历数值较大的数总是会重复之前已经递归过的数比如8总会递归4和2但是4和2已经在4的递归中计算过了为了加快速度应该把以前的结果存储起来然后直接调用就行。 第二种方法的改进 class Solution(object):def countBits(self, num):self.memo [0] * (num 1)res []for i in range(num 1):res.append(self.count(i))return resdef count(self, num):if num 0:return 0if self.memo[num] ! 0:return self.memo[num]if num % 2 1:res self.count(num - 1) 1else:res self.count(num // 2)self.memo[num] resreturn res 进入count后 判断非0后直接判断是否存在列表里有的话直接调值。
http://www.w-s-a.com/news/238957/

相关文章:

  • 企业网站被黑后如何处理wordpress邮件发送类
  • 北京网站的网站建设公司建设工程竣工验收消防备案网站
  • 淄博市 网站建设报价wordpress里的发消息给我
  • 网站下拉菜单怎么做游戏网站模板免费下载
  • 阿里云上做网站套模板怎么做一个网站开发小组
  • 营销型网站源码下载青岛做网站建设的公司哪家好
  • 迁西网站定制怎么制作网址内容
  • 深圳装饰公司网站宁波网站建设哪里有
  • 建站网站破解版怎么看自己的网站是用什么做的
  • 做微商那个网站好织梦模板更新网站
  • 网站注册表单怎么做手机做网站需要多少天
  • 书店商城网站html模板下载企业网站建设方案书范文
  • 建设网站是普通办公吗快速排名seo软件
  • 大型外贸网站建设网站建设图片尺寸要求
  • 网站建设可信赖北京网站开发月薪
  • 专门做lolh的网站wordpress 模版 cho's
  • 网上做设计兼职哪个网站好点网站开发毕业周记
  • 自学商城网站建设无为网页定制
  • wordpress全站cdn手机网站调用分享
  • 淄博做网站58同城wordpress微信号订阅
  • 不同的网站 做301公共资源交易中心是干嘛的
  • 36 氪 网站如何优化怎么优化自己的网站
  • 网站兼容问题湖北网站建设优化
  • 2018新网站做外链app制作的网站
  • 外贸网站建设怎么建设pc网站做移动端适配
  • 做经销找厂家好的网站个人备案网站可以做电影站吗
  • 网站搭建怎么做网站建设培训哪家好
  • 学做美食的视频网站企业网站备案密码怎么找回
  • 销售产品做单页还是网站seo有哪些作用
  • 网站视觉规范南宁网站优化推广