申请完了github帐号,又在Leetcode上发现了新大陆,从昨天开始刷题了,感觉很有意思。看视频学习Python动手不太多,现在开始刷题练习自己的代码水平,leetcode上还有很多大神,快哉美哉!
代码我都放到github里了https://github.com/Ray1225/Python_Training,欢迎大家关注并指正。话不多说,怒上代码。
1. Hamming Distance
The Hamming distance between two integers is the number of positions at which the corresponding bits are different.
Given two integers x and y, calculate the Hamming distance.
Note:
0 ≤ x, y < 231.
Example:
Input: x = 1, y = 4
Output: 2
Explanation:
1 (0 0 0 1)
4 (0 1 0 0)
↑ ↑
简单点说,就是输入两个数字,比较两个数字的二进制的差异,最终输出差异的距离——hamming距离。
首先说一下我的思路,我在IDLE试了一下1转化成2进制为’0b1’,4转化为二进制为’0b100’,如果用string的方式来逐一比较的话需要将1的二进制’0b1’补齐,和’0b100’保持一致即’0b001’,这样才可以逐一对比,并计算”hamming distance”。
class Solution(object):