python实现:求一个整数中的二进制1的个数的两种实现方法
来源:互联网 发布:广电网络面临的竞争 编辑:程序博客网 时间:2024/06/06 04:09
import timeimport datetimeprint time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())print datetime.datetime.now()countx = 0x = 9999while x: countx += 1 x &= x - 1 print "x= %d, countx=%d" % (x, countx), print '{0:b}'.format(x)print datetime.datetime.now()print time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())print "result: %d" % countxprint time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())print datetime.datetime.now()count = 0x = 9999while x > 0: if x % 2 != 0: count += 1 x /= 2 print "x= %d, count= %d" % (x, count), print '{0:b}'.format(x)print datetime.datetime.now()print time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())print "resule = %d" % count
#algorithm1
2017-08-10 09:31:45
2017-08-10 09:31:45.593000
x= 9999, countx=0 10011100001111
x= 9998, countx=1 10011100001110
x= 9996, countx=2 10011100001100
x= 9992, countx=3 10011100001000
x= 9984, countx=4 10011100000000
x= 9728, countx=5 10011000000000
x= 9216, countx=6 10010000000000
x= 8192, countx=7 10000000000000
2017-08-10 09:31:45.686000
2017-08-10 09:31:45
result: 8
2017-08-10 09:31:45.593000
x= 9999, countx=0 10011100001111
x= 9998, countx=1 10011100001110
x= 9996, countx=2 10011100001100
x= 9992, countx=3 10011100001000
x= 9984, countx=4 10011100000000
x= 9728, countx=5 10011000000000
x= 9216, countx=6 10010000000000
x= 8192, countx=7 10000000000000
2017-08-10 09:31:45.686000
2017-08-10 09:31:45
result: 8
#algorithm2
2017-08-10 09:31:45
2017-08-10 09:31:45.717000
x= 9999, count= 1 10011100001111
x= 4999, count= 2 1001110000111
x= 2499, count= 3 100111000011
x= 1249, count= 4 10011100001
x= 624, count= 4 1001110000
x= 312, count= 4 100111000
x= 156, count= 4 10011100
x= 78, count= 4 1001110
x= 39, count= 5 100111
x= 19, count= 6 10011
x= 9, count= 7 1001
x= 4, count= 7 100
x= 2, count= 7 10
x= 1, count= 8 1
2017-08-10 09:31:45.795000
2017-08-10 09:31:45
resule = 8
2017-08-10 09:31:45
2017-08-10 09:31:45.717000
x= 9999, count= 1 10011100001111
x= 4999, count= 2 1001110000111
x= 2499, count= 3 100111000011
x= 1249, count= 4 10011100001
x= 624, count= 4 1001110000
x= 312, count= 4 100111000
x= 156, count= 4 10011100
x= 78, count= 4 1001110
x= 39, count= 5 100111
x= 19, count= 6 10011
x= 9, count= 7 1001
x= 4, count= 7 100
x= 2, count= 7 10
x= 1, count= 8 1
2017-08-10 09:31:45.795000
2017-08-10 09:31:45
resule = 8
阅读全文
0 0
- python实现:求一个整数中的二进制1的个数的两种实现方法
- 读博客”求一个整数中二进制数1的个数“两种方法分析
- Java实现求一个整数的二进制数中1的个数
- 编程实现求一个整数的二进制中0和1的个数
- C语言求一个整数的二进制形式表示中1的个数,用函数实现
- 一个整数二进制表示中1的个数 java实现
- 求一个整数中的二进制一的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 求一个整数的二进制中1的个数
- 敌兵布阵------树状数组(单点更新与区间求和)
- 正则表达式
- SVM由浅入深的详细讲解(遇到最易懂的)
- 170809
- Machine Learning4,--SVM(支持向量机)
- python实现:求一个整数中的二进制1的个数的两种实现方法
- QtCreateor安装/卸载/更新/安装ROS插件(含32位x86)
- Druid 与 阿里巴巴开源项目Druid
- SQL RIGHT JOIN 关键字
- PHP 实例
- Java面试09|多线程
- instanceof关键字
- C#的反射(Reflector)原理
- python stomp 收发指定的消息