【LeetCode】190 & 191 - Reverse Bits & Number of 1 Bits
190 - Reverse Bits
Reverse bits of a given 32 bits unsigned integer.
For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as00111001011110000010100101000000).
Follow up:
If this function is called many times, how would you optimize it?
Related problem: Reverse Integer
Solution 1:
  class Solution {
  public:
     uint32_t reverseBits(uint32_t n) {      //runtime:4ms
         unsigned ret = ;
         unsigned x =  << ;
         unsigned y = ;
         while(x){
             if(x & n)ret |= y;   //或ret += y;
             x >>= ;
             y <<= ;
          }
          return ret;
      }
  };
Solution 2:
  class Solution {
  public:
     uint32_t reverseBits(uint32_t n) {      //runtime:4ms
         unsigned int bit = ;
         unsigned int result = ;
         while(bit<)
         {
             if((n>>bit) &  == )
                 result = result + (<<(-bit));
             bit ++;
         }
         return result;
     }
  };
191 - Number of 1 Bits
Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also known as the Hamming weight).
For example, the 32-bit integer ’11' has binary representation 00000000000000000000000000001011, so the function should return 3.
Solution:n&(n-1)实现n与n-1的按位与,消除最后一位1
 1 class Solution {
 2 public:
 3     int hammingWeight(uint32_t n) {
 4         int count=0;
 5         while(n){
 6             n &= (n-1);
 7             count++;
 8         }
 9         return count;
10     }
11 };
【LeetCode】190 & 191 - Reverse Bits & Number of 1 Bits的更多相关文章
- 【LeetCode】150. Evaluate Reverse Polish Notation 解题报告(Python)
		[LeetCode]150. Evaluate Reverse Polish Notation 解题报告(Python) 标签: LeetCode 题目地址:https://leetcode.com/ ... 
- 【LeetCode】287. Find the Duplicate Number
		Difficulty:medium More:[目录]LeetCode Java实现 Description Given an array nums containing n + 1 integer ... 
- 【LeetCode】1150. Check If a Number Is Majority Element in a Sorted Array 解题报告(C++)
		作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 字典 二分查找 日期 题目地址:https://lee ... 
- 【LeetCode】190. Reverse Bits 解题报告(Python & C++)
		作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 二进制字符串翻转 位运算 日期 题目地址:https://le ... 
- 【LeetCode】190. Reverse Bits
		题目: Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented ... 
- 【LeetCode】9 & 234 & 206 - Palindrome Number & Palindrome Linked List & Reverse Linked List
		9 - Palindrome Number Determine whether an integer is a palindrome. Do this without extra space. Som ... 
- 【LeetCode】7、Reverse Integer(整数反转)
		题目等级:Easy 题目描述: Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 O ... 
- 【LeetCode】476. 数字的补数 Number Complement
		作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 公众号:负雪明烛 本文关键词:Leetcode, 力扣,476, 补数,二进制,Pyth ... 
- 【LeetCode】7 & 8 - Reverse Integer & String to Integer (atoi)
		7 - Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 Notic ... 
随机推荐
- 着色器(Shader)
			着色器(Shader) 顶点着色器(Vertex shader) 片段着色器(Fragment shader) 几何着色器(Geometry Shader) 提供通用计算能力的着色器(Compute ... 
- 16_采用SharedPreferences保存用户偏好设置参数
			按钮事件 <Button android:id="@+id/button" android:layout_width="wrap_content" and ... 
- USACO Section 2.4: Bessie Come Home
			因为题目给了边的信息,所以比较适用bell-man的方法 /* ID: yingzho1 LANG: C++ TASK: comehome */ #include <iostream> # ... 
- 《Java编程那点事儿》读书笔记(七)——多线程
			1.继承Thread类 通过编写新的类继承Thread类可以实现多线程,其中线程的代码必须书写在run方法内部或者在run方法内部进行调用. public class NewThread extend ... 
- ftp 建立、配置、实用软件  fileZilla server
			ftp 建立.配置.实用软件 fileZilla server 
- OSX 升级 vim
			善用 Homebrew 神器啊,少年!Homebrew - The missing package manager for OS X安装完成后打开终端输入: brew install vim --wi ... 
- mysql安装图解 mysql图文安装教程(详细说明)
			MySQL5.0版本的安装图解教程是给新手学习的,当前mysql5.0.96是最新的稳定版本. mysql 下载地址 http://www.jb51.net/softs/2193.html 下面的是M ... 
- 对于json对像,怎么遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值
			对于json对像,怎么遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值?请参阅下面的关键代码: <html> <head> & ... 
- HeadFirst Jsp 05 (属性和监听)
			活用DD, 比如, 我想设置一个email地址, 但是不像在servlet中硬编码, 如果能再web.xml中设置一个参数, 直接拿到这个参数就更好一点. 容器建立一个servlet时, 它会读DD( ... 
- 为Gradle添加UTF-8支持
			gradle默认使用系统字符编码,大多数中文系统是使用GBK编码 但程序员绝大部分都是使用UTF-8写各类java文件以及其他资源文件 编译时很容易报错,比如下面的错误: ”警告:编码 GBK 的不可 ... 
