461. 汉明距离

2023-11-13

题目描述

两个整数间的汉明距离是指,这两个数字对应二进制位不同的位置的数目。

给定两个整数 x 和 y,计算它们间的汉明距离。

注意:
0 ≤ x, y < 2^31.

样例

示例:
输入: x = 1, y = 4
输出: 2
解释:
1 (0 0 0 1)
4 (0 1 0 0)
↑ ↑

上面的箭头指出了对应二进制位不同的位置。

思路

  • 每次取出两个数的最后一位进行异或。若异或值为1,那么汉明距离就加1,否则x和y同时右移一位,进行下一轮的判断。当x和y均变为0时,循环结束。
  • 取出最后一位的方法:x & 1,即可获得 x 的最后一位,y同理。
  • 时间复杂度为O(n),n为x和y中位数的最大值,不超过32。

代码

class Solution {
    public int hammingDistance(int x, int y) {
    	//记录总汉明距离
    	int cnt = 0;
    	while(true) {
    		//取出最后一位异或
    		int a = (x&1) ^ (y&1);
    		cnt += a;
    		x = x >> 1;
    		y = y >> 1;
    		if(x == 0 && y == 0)
    			break;
    	}
    	return cnt;
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

461. 汉明距离 的相关文章

  • oracle表连接深入浅出

    author skate time 2010 08 20 表的连接 表的连接是指在一个SQL语句中通过表与表之间的关联 从一个或多个表检索出相关的数据 如果一个SQL语句的关联表超过两个 那么连接的顺序如何呢 ORACLE首先连接其中的两个
  • 【AWS实验 】在 AWS Fargate 上使用 Amazon ECS 部署应用程序

    文章目录 实验概览 目标 实验环境 任务 1 连接到实验命令主机 任务 2 将应用程序容器化 任务 3 构建 Web2048 容器 任务 4 创建 Amazon ECR 存储库并推送 Docker 映像 任务 5 创建 ECS 集群 任务
  • IIS6.0容器之解析漏洞复现

    漏洞简介 解析漏洞是指web服务器因对HTTP请求处理不当导致将非可执行的脚本 文件等当作可执行的脚本去执行 该漏洞一般配合web容器 iis nginx apache tomcat等 的文件上传功能去使用 以获取服务器的权限 IIS5 X
  • 【超详细】MMLab分类任务mmclassification:环境配置说明、训练、预测及模型结果可视化展示

    本文详细介绍了使用MMLab的mmclassification进行分类任务的环境配置 训练与预测流程 目录 文件配置说明 下载源码 配置文件 基于预训练模型微调或者续训练自己模型的方式 配置文件说明 数据集配置方式 更改配置文件中的类别名称
  • Docker-harbor私有仓库

    目录 一 Harbor概述 1 Harbor的概念 2 Harbor的特性 3 Harbor的构成 二 Harbor 部署 环境准备 1 部署 Docker Compose 服务 2 部署 Harbor 服务 下载或上传 Harbor 安装
  • Data,DB,DBMS,DBS,DBA

    数据 Data 数据库 Database DB 数据库管理系统 DBMS 数据库系统 DBS 数据库管理员 DBA 1 数据 数据是信息的承载者 数据可以是数字 也可以是文字 图片 音频等等 通过数字化存进计算机 2 数据库 长期存储在计算
  • 【AI实战】开源大语言模型LLMs汇总

    AI实战 开源大语言模型LLM汇总 大语言模型 开源大语言模型 1 LLaMA 2 ChatGLM 6B 3 Alpaca 4 PandaLLM 5 GTP4ALL 6 DoctorGLM MedicalGPT zh v2 7 Medica
  • 串口收发最高位为0

    串口收发最高位为0 昨天在现场 读取电表度数的时候发现一个问题 读取字节最高位不管多少全部为0 搞的我相当郁闷 最后没有办法 只好人工给他置1 今天到了公司打开 linux 程序设计 翻到终端这一章 152页 赫然写着几个大字 ISTRIP
  • input标签设置为不可用状态的三种方法

    一 disabled 禁用input元素 背景颜色变成灰色 不能点击和编辑 但后台可以接收到input中的数据
  • 超声波 HC-SR04 模块入门

    超声波 HC SR04 模块入门 简介 超声波测距模块是根据超声波遇障碍反射的原理进行测距的 能够发送超声波 接收超声波并通过处理 输出一段和发送与接收间隔时间相同的高电平信号 是常用的测距模块之一 HC SR04 是最常用的超声波测距模块
  • fastadmin两级联动

    记录 实现fastadmin 两级联动效果 后端代码 ajax控制器 读取年级数据 联动列表 public function grade status this gt request gt get status where shop id
  • Hive练习题 字符串与时间类型转换

    参考文章 https blog csdn net a805814077 article details 115014708 概念 时间戳 也就是timestamp 是hive中的一种数据类型 与unix timestamp不是一个概念 un
  • Vue 之自定义指令

    Vue 之自定义指令 Vue 自定义指令有全局注册和局部注册两种方式 先来看看注册全局指令的方式 通过 Vue directive id definition 方式注册全局指令 然后在入口文件中进行 Vue use 调用新的改变 在src目
  • 01前端实习面经之第一次面试

    前端实习面试经验 本系列文章为本菜鸟记录自己的前端面试经验 也希望帮助到需要者 文章目录 前端实习面试经验 公司 面试题 总结 公司 base南京 200 天 面试题 1 es6新特性 2 数组的常用方法 3 对promise的了解 是否使
  • Linux安装代码提示或自动补全插件

    在Linux中 当我们输入命令的时候 按 TAB键会有自动补全的功能 然而有些命令不会提示 而我们又忘记了怎么拼写 比如查看防火墙开启的状态命令如下 systemctl status firewalld service firewalld
  • 网页端html使用mqttjs,JavaScript使用MQTT - 农民子弟 - 博客园

    lt html gt lt head gt lt meta charset utf 8 gt lt title gt title gt lt script src https cdnjs cloudflare com ajax libs p
  • 迅捷fw325r虚拟服务器设置,迅捷FW325Rwifi连接Internet上网怎么设置 - falogincn登录页面...

    新购或恢复出厂快fw325r无线路由器的设置 实现网络连接 需要经过以下配置步骤 本文主要介绍了迅捷www falogincn cn 快 fw325r路由器网络连接设置方法 迅捷fw325r路由器网络连接设置方法 1 输入登录地址 在浏览器
  • 一个简单有趣的爬虫-----爬取百度翻译功能

    首先确定爬取的网址 https fanyi baidu com sug 我们爬取翻译功能时应对request进行简单伪装 编写headers base url https fanyi baidu com sug kw input 请输入要查

随机推荐

  • QT With OpenGL(SSAO)(Screen-Space Ambient Occlusion)

    文章目录 在G Buffer中加入深度信息 使用深度信息得到环境遮蔽的结果 1 新建SSAO帧缓存类 2 生成法向半球核心 3 生成随机核心转动纹理 为什么要生成随机核心转动 创建一个小的随机旋转向量纹理 4 使用G Buffer渲染SSA
  • 从4k到42k,软件测试工程师的涨薪史,给我看哭了

    最近 2023年高校毕业生就业调查显示 本科毕业月平均起薪为5825元 调查一出 便有很多同学表示自己又被平均了 看着这一数据 不免让人想到前不久中国青年报的一项调查 近六成大学生认为毕业10年内会年入百万 毕业10年真的能带来这么大的变化
  • Html CSS的三种链接方式

    感谢原文 https blog csdn net abc5382334 article details 24260817 感谢原文 https blog csdn net jiaqingge article details 52564348
  • 【pycharm远程debug中环境变量的问题】踩坑日记①

    在使用pycharm远程debug的时候 经常会出现环境变量的问题 就是说在服务器正常运行程序没问题 但是使用pycharm开始debug就会出现毛病 在做实验的时候我们往往要配置环境变量 一般会永久性地配置在 bashrc等文件中 以下放
  • 文件服务器如何保存,文件保存服务器

    文件保存服务器 内容精选 换一换 环境 centos jdk1 8 vsftpd nginx spring boot dockerftp上传附件 上传的附件有两种方式回显 在下面再详细说明此处省略ftp服务器 docker服务器nginx服
  • SQL模糊查询变量参数

    Transactional Modifying Query value select from 表名 where name like 1 nativeQuery true List
  • FindObjectOfType函数

    介绍 在Unity游戏引擎中 FindObjectOfType函数用于在场景中查找指定类型的单个活动对象 它可以通过提供类型参数来查找一个激活状态的场景对象 并返回第一个找到的对象实例 这个函数在需要查找某个特定类型的对象时非常有用 尤其是
  • BUG:阿里巴巴图标库引入链接后,icon有时候会不显示的话svg下载到本地使用

    忽然icon图标就不显示 但是代码 icon链接地址都没有发生变化 解决办法 将icon图标下载到本地 记住前后引用本地的名字要保持一致
  • C++中的代码重用与其他

    当初始化列表包含多个项目时 这些项目被初始化的顺序为他们被声明的顺序 而不是他们在初始化列表中的顺序 1 私有继承 使用私有继承 基类的公有成员和保护成员都将称为派生类的私有成员 使用公有继承 基类的公有方法将称为派生类的公有方法 使用私有
  • 开源框架RuoYi-Vue学习之集成redis/集成验证码

    1 请参见项目代码地址 文章目录 一 集成redis 二 验证码功能 图形验证码 数学验证码 三 使用postman测试验证码 四 存在的问题 使用redis工具查看为二进制数据 对开发者不友好 4 1 注意 4 2 解决方法 gt 配置序
  • ​LeetCode刷题实战267:回文排列II

    算法的重要性 我就不多说了吧 想去大厂 就必须要经过基础知识和业务逻辑面试 算法面试 所以 为了提高大家的算法能力 这个公众号后续每天带大家做一道算法题 题目就从LeetCode上面选 今天和大家聊的问题叫做 回文排列II 我们先来看题面
  • Chrome启动参数大全

    原文地址 https www cnblogs com yikemogutou articles 12624113 html 序号 条件 说明 1 报告伪分配跟踪 伪跟踪从当前活动的跟踪事件派生 2 prefetch 1 prefetch 启
  • 【无标题】Unable to convert type java.lang.Character of 8 to type of java.lang.CharSequence

    服务器内部错误org mybatis spring MyBatisSystemException nested exception is org apache ibatis exceptions PersistenceException E
  • GitHub 80k星Python神级学习路线,从青铜到王者,赶紧收藏!

    Python 为什么这么火 有很多原因 列举几点 语法简单易学 其他语言 5 行代码才能实现的东西 Python 一行搞定 可以少写很多代码 因此不少同学拿 Python 刷算法题 但注意要理解算法本身哦 类库生态丰富 想做什么功能基本都有
  • 程序计数器的作用--简单易懂

    3 程序计数器 什么是程序计数器 它是干什么用的 java中程序计数器是用寄存器实现的 它的作用是寻找下一个要执行的程序 当我们的java程序被编译成二进制字节码文件后 如下图 右面 是我们写的代码 左面是二进制字节码形式 class 它们
  • FFmpeg 控制台窗口的隐藏和正常退出

    FFmpeg无疑是音视频界的翘首 很多企业或个人都会拿来使用 具体怎么使用 在此不做赘述 这里仅仅讲述如何用C 调用ffmpeg指令 以及调用的控制台窗口的正常关闭 录像或转码等情况下 非正常关闭 直接导致文件损坏 不可用 一 指令的执行
  • PID控制原理详解(一)

    PID的理解 关于理解PID控制算法最典型的一个例子就是一个漏水的水缸的问题 网上有很多讲解PID的帖子会讲到这个例子 这里我也把我自己对于PID的理解用这个例子阐述一遍 有个漏水的水缸 而且漏水的速度还不是恒定的 然后我们还有个水桶 我们
  • BES2300x笔记(14) -- 提示音模块

    哈喽大家好 这是该系列博文的第十四篇 篇 lt lt 系列博文索引 快速通道 gt gt 一 前言 提示音 的这个模块 代码量确实不小啊 这一篇 我们就来梳理一下 提示音相关接口的调用逻辑吧 二 代码调用逻辑 app voice repor
  • To see the full stack trace of the errors, re-run Maven with the -e switch.

    问题描述 微服务项目中其它模块不能依赖common模块中的依赖 而common中是有依赖的 然后重新对common进行install发现报错 原因分析 经过查找是由于common中的pom xml中有一个依赖被引入了两次 删掉其中一个即可
  • 461. 汉明距离

    题目描述 两个整数间的汉明距离是指 这两个数字对应二进制位不同的位置的数目 给定两个整数 x 和 y 计算它们间的汉明距离 注意 0 x y lt 2 31 样例 示例 输入 x 1 y 4 输出 2 解释 1 0 0 0 1 4 0 1