当前位置:网站首页>461. 汉明距离
461. 汉明距离
2022-08-03 20:37:00 【安吉_lh1029】
1 题目描述
2、题目说明
【汉明距离】广泛应用于多个领域。在编码理论中用于错误检测,在信息论中量化字符串之间的差异。两个整数之间的汉明距离是对应位置上数字不同的位数。
方法一:内置位计数功能
思路及算法
大多数编程语言都内置了计算二进制表达中 1 的数量的函数。在工程中,可直接使用内置函数。
class Solution {
public int hammingDistance(int x, int y) {
return Integer.bitCount(x ^ y);
}
}
复杂度分析
时间复杂度:O(1)。不同语言的实现方法不一,我们可以近似认为其时间复杂度为 O(1)。
空间复杂度:O(1)。
方法二:移位实现位计数
循环对res进行判断,直到二进制数中的1全移除为止,每次移除计数+1
class Solution {
public int hammingDistance(int x, int y) {
int s = x ^ y, ret = 0;
while (s != 0) {
ret += s & 1;
s >>= 1;
}
return ret;
}
}
复杂度分析
时间复杂度:O(logC),其中 C 是元素的数据范围,在本题中 logC=log2 ^31 =31。
空间复杂度:O(1)。
边栏推荐
- 华为设备VRRP配置命令
- Leetcode 16. Numerical integral power (power + fast recursive/iteration)
- Kubernetes资源编排系列之三: Kustomize篇 作者 艄公(杨京华) 雪尧(郭耀星)
- 8.2模拟赛总结
- Lecture topics and guest blockbuster, TDengine developers conference to promote data technology "broken"
- 力扣707-设计链表——链表
- leetcode 231. 2 的幂
- leetcode 268. 丢失的数字(异或!!)
- 若依集成browscap读取浏览器用户代理
- 尚医通项目总结
猜你喜欢
RNA核糖核酸修饰荧光染料|HiLyte Fluor 488/555/594/647/680/750标记RNA核糖核酸
MapReduce介绍及执行过程
3种圆形按钮悬浮和点击事件
Edge box + time series database, technology selection behind Midea's digital platform iBuilding
15年软件架构师经验总结:在ML领域,初学者踩过的五个坑
Hinton2022年RobotBrains访谈记录
codeforces:C. Maximum Subrectangle【前缀和 + 贪心 + 最小子数组和】
RNA-ATTO 390|RNA-ATTO 425|RNA-ATTO 465|RNA-ATTO 488|RNA-ATTO 495|RNA-ATTO 520近红外荧光染料标记核糖核酸RNA
chartjs自定义柱状图插件
YARN功能介绍、交互流程及调度策略
随机推荐
伪标签汇总
数学之美 第六章——信息的度量和作用
ES6 deconstruction assignment - array object deconstruction and deconstruction
leetcode 16.01. Swap numbers (swap the values of 2 numbers without using temporary variables)
leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)
软件测试基本流程有哪些?权威的第三方软件检测机构推荐
用 setTimeout 来实现 setInterval
LeetCode 899. 有序队列
ES6 introduction and let, var, const
Why BI software can't handle correlation analysis
独立站卖家在哪些平台做社交媒体营销效果最好?
leetcode 2119. 反转两次的数字
若依集成browscap读取浏览器用户代理
glusterfs build and use
Alexa染料标记RNA核糖核酸|RNA-Alexa 514|RNA-Alexa 488|RNA-Alexa 430
ECCV 2022 | 清华&腾讯AI Lab提出REALY:重新思考3D人脸重建的评估方法
NAACL 2022 | 具有元重加权的鲁棒自增强命名实体识别技术
力扣707-设计链表——链表
leetcode 268. 丢失的数字(异或!!)
在树莓派上搭建属于自己的网页(4)