1 题目描述

2 解题思路

2.1 方法1 字符串倒转

class Solution:def reverseBits(self, n: int) -> int:x=bin(n)[2:]
#将整数转换成二进制(0b开头的那种)tmp=x[::-1]
#倒转二进制字符串for i in range(len(tmp),32):print(len(tmp))tmp+='0'
#倒转之前是在前面补0,到转置后是在末尾补0,使得位数来到32位return(int(tmp,2))

2.2 方法2 :逐位转移

每次看一位

class Solution:def reverseBits(self, n: int) -> int:ret=0for i in range(32):ret=(ret<<1)|(n&1)n=n>>1return ret

2.3 使用分治的思路

最终的目的是让整个二进制字符串中的每一位倒转。那么我们可以使用分治的思路解决这个问题

我们以八位二进制数为例:

class Solution:def reverseBits(self, n: int) -> int:n = (n >> 16) | (n << 16);n = ((n & 0xff00ff00) >> 8) | ((n & 0x00ff00ff) << 8);n = ((n & 0xf0f0f0f0) >> 4) | ((n & 0x0f0f0f0f) << 4);n = ((n & 0xcccccccc) >> 2) | ((n & 0x33333333) << 2);n = ((n & 0xaaaaaaaa) >> 1) | ((n & 0x55555555) << 1);return n;

文巾解题 190. 颠倒二进制位相关推荐

  1. 文巾解题 342. 4的幂

    1 题目描述 2 解题思路 2.1 方法1 判断log函数的结果是不是整数 class Solution:def isPowerOfFour(self, n: int) -> bool:if(n ...

  2. 文巾解题 面试题 01.04. 回文排列

    1 题目描述 2 解题思路 2.1 哈希表 创建一个哈希表,记录每个元素出现的次数.如果出现次数为奇数的元素只有一个或者没有,那么就是一个回文排列 class Solution:def canPerm ...

  3. 文巾解题 15. 三数之和

    1 题目描述 2 解题思路 2.1 使用两数之和函数 这种做法目前超时了,如果大家有想到合适的减时间/剪枝的方法,欢迎私信or评论~ 两数之和的方法见文巾解题 1. 两数之和_刘文巾的博客-CSDN博 ...

  4. 文巾解题 477. 汉明距离总和

    1 题目描述 2 解题思路 2.1 暴力两两比较 两个数字之间的汉明距离可以使用 文巾解题 461. 汉明距离_刘文巾的博客-CSDN博客 中的任何一种方法,但是因为这个是两两比较,时间复杂度比较高, ...

  5. 文巾解题 1035. 不相交的线

    1 题目描述 2 解题思路 k条互不相交的直线分别连接了数组 nums1和nums2的 k 对相等的元素,而且这 k 对相等的元素在两个数组中的相对顺序是一致的,因此,这 k 对相等的元素组成的序列即 ...

  6. java二进制反转_Java实现 LeetCode 190 颠倒二进制位

    190. 颠倒二进制位 颠倒给定的 32 位无符号整数的二进制位. 示例 1: 输入: 00000010100101000001111010011100 输出: 0011100101111000001 ...

  7. 【Leetcode】[190] 颠倒二进制位

    [Leetcode][190] 颠倒二进制位 Author: Xin Pan Date: 2022.3.13 题目 原题链接 颠倒给定的 32 位无符号整数的二进制位. 解法 考虑使用位运算来做,因为 ...

  8. leetcode#190 颠倒二进制位

    leetcode#190 颠倒二进制位 题目: 颠倒给定的 32 位无符号整数的二进制位. 示例: 输入: 00000010100101000001111010011100 输出: 001110010 ...

  9. 文巾解题 278. 第一个错误的版本

    1 题目描述 2 解题思路 二分查找见:二分查找详解_刘文巾的博客-CSDN博客 class Solution(object):def firstBadVersion(self, n):left=1r ...

最新文章

  1. 如何用 Python 进行基于深度学习的计算机视觉项目开发?
  2. Jenkins进阶系列之——04Publish Over FTP Plugin插件
  3. 阿里资深技术专家:在各阶段中,3年经验的程序员应具备哪些技术能力(进阶必看)...
  4. 为js和css文件自动添加版本号
  5. WebAPI(part3)--事件基础
  6. SAP S/4HANA里如何创建Customer主数据以及执行后续处理
  7. mysql创建管理密码_mysql 创建用户与授权、修改密码
  8. ABP框架使用拦截器动态配置租户过滤器
  9. php给html传值,PHP传值到不同页面的三种常见方式及php和html之间传值问题_PHP
  10. 1470A. Strange Birthday Party
  11. java shiro做页面显示_Java-Shiro(八):Shiro集成SpringMvc、Themeleaf,如何实现Themeleaf视图引擎下解析*.html中shiro权限验证...
  12. html水滴掉下来越来越来越淡代码,水滴落到水面就消失了?没那么简单!看水滴如何翩翩起舞!...
  13. 帆软报表插件开发之fine-decision中的AccessProvider扩展
  14. python函数chr_python函数之chr(i)
  15. SpringData JDBC
  16. log4net异步写入日志_redis学习笔记(三)RDB日志
  17. 解决app安装失败,并出现Package [pkg1] attempting to redeclare permission [perm] already owned by [pkg2]异常的问题
  18. 【DeeCamp 优秀项目详解】从零开始到 AI 技术落地,只用三周
  19. 让Fireball CodeEditor控件禁止中文双倍输入
  20. struts2架构网站漏洞修复详情与利用漏洞修复方案

热门文章

  1. Leetcode: Balanced Binary Tree
  2. linux bash 学习
  3. dell 远程访问管理卡iDRAC 7
  4. cocos2d-x学习笔记 动作 CCCallFunc家族(回调函数包装器)
  5. 算法刷题-数论-组合数、快速幂、逆元、递推求组合数、逆元求组合数
  6. c++runtime error单调栈
  7. 递归与递推 普通排队问题及带约束条件的排队问题 c代码
  8. 诚毅学院全国计算机考试,集美大学2017年9月全国计算机等级考试报名时间
  9. java web压缩过滤器_Java Web过滤器Filter(五)
  10. 不允许对系统目录进行即席更新_还不懂Docker?一个故事安排的明明白白!