颠倒给定的32位无符号整数的二进制位。
例如,给定输入 43261596(二进制表示为 00000010100101000001111010011100 ),返回 964176192(二进制表示为 00111001011110000010100101000000)。
问题进阶:
如果多次调用这个函数,你将如何优化它?

详见:https://leetcode.com/problems/reverse-bits/description/

Java实现:只需要把要翻转的数从右向左一位位的取出来,如果取出来的是1,将结果res左移一位并且加上1;如果取出来的是0,将结果res左移一位,然后将n右移一位即可

public class Solution {
// you need treat n as an unsigned value
public int reverseBits(int n) {
int res=0;
for(int i=0;i<32;++i){
if((n&1)==1){
res=(res<<1)+1;
}else{
res=res<<1;
}
n=n>>1;
}
return res;
}
}

参考:https://www.cnblogs.com/grandyang/p/4321355.html

最新文章

  1. 一次Mysql 死锁事故
  2. node基础11:接受参数
  3. java中参数传递方式
  4. excel 导入数据库 / SSIS 中 excel data source --64位excel 版本不支持-- solution
  5. Java关键字——super
  6. js 中{},[]中括号,大括号
  7. js实现自动登陆的按钮
  8. Outlook接收qq的邮件
  9. Immutable 详解及 React 中实践
  10. jquery中防止冒泡事件
  11. Java HttpURLConnection发送post请求示例
  12. poj 2385 Apple Catching(记录结果再利用的动态规划)
  13. Springboot中如何在Utils类中使用@Autowired注入bean
  14. python 字符串和字节数互转
  15. Struts2-综合项目
  16. float数据类型研究,发现其能显示的有效数字极为有限
  17. apicloud api.openwin
  18. JAVA复制文件最快的算法
  19. 技巧之如何快速使用websocket来监控标准输出
  20. Spring事务源码分析总结

热门文章

  1. SQL 通用数据类型
  2. 使用JS对select标签进行联动选择
  3. iOS 配置支付宝
  4. struts2 Action获取表单数据
  5. oracle安装登录sqlplus / as sysdba然后报错ERROR: ORA-01031 insufficient privileges
  6. golang中获取字符串长度的几种方法
  7. jQuery - AJAX 级联变动
  8. 八.OC基础加强--1.autorelease的用法 2.ARC下内存管理 3.分类(category)4.block的学习
  9. 【HAOI2007】反素数
  10. VS2013在右键菜单添加命令插件开发