LeetCode Bitwise AND of Numbers Range

原创 2015年09月06日 08:33:05

Description:

Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.

For example, given the range [5, 7], you should return 4.

Solution:

First, we should be clear that the answer should be no larger than both m and n.

Then we can just move the digit from ones to 32nd, loop continues until it reaches the condition that n equals m. And there might be the condition that n will never be equal to m, so just return 0. 

<span style="font-size:18px;">import java.util.*;

public class Solution {
	public int rangeBitwiseAnd(int m, int n) {
		int offset = 0;
		while (m > 0 && n > 0) {
			if (m == n)
				return n << offset;
			offset++;
			m >>= 1;
			n >>= 1;
		}
		return 0;
	}
}</span>


【python】【leetcode】【算法题目2—Add Two Numbers】

【python】【leetcode】【算法题目2—Add Two Numbers】 题目原文: You are given two linked lists representing two non-...
  • u014615155
  • u014615155
  • 2016年11月21日 12:05
  • 1801

leetcode 204题求素数个数

Description: Count the number of prime numbers less than a non-negative number, n   提示晒数法: http://e...
  • wangyaninglm
  • wangyaninglm
  • 2015年04月28日 22:20
  • 2140

【LeetCode-面试算法经典-Java实现】【165-Compare Version Numbers(比较版本号)】

【165-Compare Version Numbers(比较版本号)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Compare two version number...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月22日 06:49
  • 2690

位操作符(bitwise operator)

位操作符允许我们操作一个基本数据类型中的整数型值的单个“比特(bit)”,即二进制位。 位操作符会对两个参数对应的位执行布尔代数运算,并最终生成一个结果。 位操作符来源于 C 语言面向...
  • u011282051
  • u011282051
  • 2013年08月20日 17:43
  • 1680

LeetCode 问题汇总之递归算法

参考文章:http://fisherlei.blogspot.com 最近在刷LeetCode,开始刷题--面试--刷题。。。 下面将遇到的可以用递归求解的问题归纳于此 1. Combinatio...
  • sbitswc
  • sbitswc
  • 2014年02月27日 04:37
  • 9040

bitwise trie tree 的参考实现-nedtries简单解析

trie tree 是一种公共前缀树,(和关联规则的一种算法frequent-pattern growth算法的数据结构相同),具体定义见wiki。 上面为一棵trie tree,直观上看,...
  • breeze_gao
  • breeze_gao
  • 2013年03月08日 16:53
  • 1231

Python学习笔记 —— 数字类型【Numbers】及常用方法

Tips: 在Python中数据类型不允许改变的,如果改变了,则会重新分配内存空间。 pi: 数字常量pi(圆周率) e:自然常数 Numbers支持四种不同的数值类型:整型...
  • linfengwenyou
  • linfengwenyou
  • 2016年06月06日 15:05
  • 791

第二章构造函数语意学——关于bitwise copy semantics

关于这个问题,第一遍看的时候比较晕,不知道这个什么 bitwise copy是个什么东西,其实很简单,就是 位逐次拷贝(我靠,一句好犀利的废话)。额,具体来说呢,就是对 源类中的成员变量 中的每一位 ...
  • Al_xin
  • Al_xin
  • 2014年08月14日 10:05
  • 389

(LeetCode)算法题目——Add Two Numbers

Add Two Numbers
  • lh470342237
  • lh470342237
  • 2017年07月31日 22:47
  • 57

LeetCode刷题之第一题——Add Two Numbers

You are given two linked lists representing two non-negative numbers. The digits are stored in rever...
  • smilebluesky
  • smilebluesky
  • 2016年02月24日 21:41
  • 331
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode Bitwise AND of Numbers Range
举报原因:
原因补充:

(最多只允许输入30个字)