原题365描述:

计算在一个 32 位的整数的二进制表式中有多少个 1.

您在真实的面试中是否遇到过这个题?

Yes

样例

给定 32 (100000),返回 1

给定 5 (101),返回 2

给定 1023 (111111111),返回 9

挑战

If the integer is n bits with m 1 bits. Can you do it in O(m) time?

原题181描述:

如果要将整数A转换为B,需要改变多少个bit位?

注意事项

Both n and m are 32-bit integers.

您在真实的面试中是否遇到过这个题?

Yes

样例

如把31转换为14,需要改变2个bit位。

(31)10=(11111)2

(14)10=(01110)2

题目分析:

如两题均为二进制操作,使用python内置函数bin(number)转化为二进制处理

注意题目要求32位二进制表示,需要补0或1。

源码:

class Solution:

# @param num: an integer

# @return: an integer, the number of ones in num

def countOnes(self, num):

# write your code here

twoStr = bin(num).replace('0b','')

if twoStr[0] == '-':

return 32 - twoStr.count('0')

else:

return twoStr.count('1')

class Solution:

"""

@param a, b: Two integer

return: An integer

"""

def bitSwapRequired(self, a, b):

# write your code here

if a == b : return 0

# 负数补1至32位

if a < 0:

strA = bin(a).replace('-0b','')

strA = (32-len(strA))*'1' + strA

else: # 整数补0至32位

strA = bin(a).replace('0b','')

strA = (32-len(strA))*'0' + strA

if b < 0:

strB = bin(b).replace('-0b','')

strB = (32-len(strB))*'1' + strB

else:

strB = bin(b).replace('0b','')

strB = (32-len(strB))*'0' + strB

n = len(strA)

count = 0

for i in range(-1,-n-1,-1):

if strA[i] != strB[i]:

count += 1

return count

python整数二进制有多少个1_LintCode Python 入门级题目 365.二进制有多少个1; 181.将整数A转换为B...相关推荐

  1. python学会后月薪-零基础python培训后薪资有多少?

    零基础python培训后薪资有多少?python开发的第三方招聘信息网站显示15k左右,具体薪资多少根据个人的能力以及工作年限都有很大的关系.Python应用广泛在软件质量控制.提升开发效率.可移植性 ...

  2. python整数转换字符串_使用Python中的str()函数将整数值转换为字符串

    python整数转换字符串 Given an integer value and we have to convert the value to the string using str() func ...

  3. python把文件读成字节流_Python中对字节流/二进制流的操作:struct

    前言 前段时间使用Python解析IDX文件格式的MNIST数据集,需要对二进制文件进行读取操作,其中我使用的是struct模块.查了网上挺多教程都写的挺好的,不过对新手不是很友好,所以我重新整理了一 ...

  4. python中一共有多少个关键字-Python中关键字有多少个?

    Python中关键词有多少个?Python中关键词目前有31个,可以利用Python的内置的keyword模块进行输出查看. keyword模块Help on module keyword: NAME ...

  5. python中一共有多少个关键字-Python中有几个关键字

    Python中关键词有多少个?Python中关键词目前有31个,可以利用Python的内置的keyword模块进行输出查看. keyword模块 Help on module keyword: NAM ...

  6. python中一共有多少个关键字-Python中所有的关键字

    在python中若想查询python中有哪些关键字可以先导入keyword模块 import keyword #导入关键字模块 print(keyword.kwlist) #查询所有关键字 查询结果: ...

  7. json传输二进制的方案(python版)

    json传输二进制的方案(python版) 1.json不能直接传二进制文件 json只能传递基本的数型(如:int,long,string等),但不能传递byte类型.但是有时候我们想在json中传 ...

  8. 7. 整数反转(C, C++, Python)

    整数反转(C, C++, Python) 1. C语言实现 2. C++语言实现 3. python语言实现 本文讲述了Math类中第7个问题的几种解法,实现语言包括C,Python以及C++. 问题 ...

  9. python必备入门代码-20行python代码的入门级小游戏的详解

    背景: 作为一个python小白,今天从菜鸟教程上看了一些python的教程,看到了python的一些语法,对比起来(有其他语言功底),感觉还是非常有趣,就随手添了一点内容,改了一个小例程,当着练练手 ...

最新文章

  1. 迷宫出路代码_如何在软件开发的迷宫中找到自己的出路
  2. 让我们来了解一下:操作系统和平台相关性
  3. 第三十四章 批量印刷书籍
  4. 还在用Swagger?我推荐这款零代码侵入的接口管理神器!
  5. Java基础学习总结(75)——Java反射机制及应用场景
  6. centos5.5安装ispcp
  7. IOS 学习笔记(3) 视图UITabbarController
  8. JAVA反射机制、Class类及动态加载、成员变量构造方法其他方法的反射与调用、代理模式AOP
  9. 深入灵魂的共鸣 (《梦断代码》读后感)
  10. Coherence Step by Step 第一篇 入门(三)配置(翻译)
  11. Toon Boom Harmony 12 for Mac(二维动画设计工具)
  12. mysql 游标动态传参数_Mysql 游标施用动态变量
  13. 如何在 Mac 操作系统上安装打印驱动程序【富士施乐/胶片】
  14. 使用LaTeX写论文
  15. 网络安全——计算机网络拓扑图
  16. 新号起步狂揽近200万粉,“老年”账号也能成为推广黑马
  17. vue获取上级路由地址
  18. Windows搭建SFTP文件服务器
  19. meta http-equiv=Content-Type content=text/html; charset=gb2312设置中文显示
  20. 【Tools】macOS 截图工具推荐xnip(滚动截图截长图、步骤截图)

热门文章

  1. TYVJ P1080 N皇后 Label:dfs PS:以前做的一道题,贴出来防忘
  2. 技术人员,为什么会苦逼
  3. c/c++/MFC 调用 js 函数代码
  4. 读书笔记之:C/C++程序员实用大全—C/C++最佳编程指南
  5. SIP穿越NATFireWall解决方案
  6. linux 内核调试 booting the kernel.,Uncompressing Linux...done, booting the kernel解决办法
  7. python怎么处理数据_python中scrapy处理项目数据的实例分析
  8. 刷新序号公共方法 公司内部用
  9. python每行输出8个式子_求大神用python写出算术题的式子和结果。
  10. python3.5.3安装完后什么样子_python3.5安装python3-tk详解