`

某个数是2的N次方

    博客分类:
  • Tool
 
阅读更多
最近在框架中有一个判断,使用的是位判断,据说会快点,哦哈哈。
结果,给出一个数33554432,我的妈啊,这是2的几次方啊,需要拿着计算器在那边计算吗?。
于是有一个想法,使用Java来判断这个数是N的M次方法
	/**
	 * 这里使用位的移动来计算2的N次方法
	 *
	 * @param value
	 * @param shift
	 * @return
	 */
	public static String toBinary(int value){
		char[] buf = new char[32];
		int charPos = 32;
		int mask = 1;
		do {
			int index = value & mask;
		    buf[--charPos] = digits[index];
		    value >>>= 1;
		} while (value != 0);
		return new String(buf, charPos, (32 - charPos));
	}

这段代码来自于JDK的Integer.toBinaryString方法
分享到:
评论

相关推荐

    js 判断一个数字是不是2的n次方幂的实例

    在JavaScript编程中,判断一个数字是否为2的n次方幂是一个常见的算法问题。这个问题的实质是要找出一个数字是否能够表示为2的某个整数幂次。以下将详细讲解两种不同的方法来解决这个问题。 方法一基于连续除以2并...

    水仙花数,也称为阿姆斯特朗数,是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(C语言源代码)

    水仙花数c语言程序水仙花数,也称为阿姆斯特朗数,是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。 #include #include int isArmstrong(int num) { int originalNum, remainder, n = 0,...

    七年级数学下册 12.4 n次方根练习(无答案) 沪教版五四制 试题.doc

    1. **n次方根**:n次方根是一个数的n次方等于给定值的数。例如,若`x^n = a`,则`x`是`a`的n次方根。对于正整数n,方根分为偶数次方根和奇数次方根。偶数次方根总是非负的,因为任何正数的偶数次方都是正数,0的偶数...

    家n次方经典语录.doc

    《家n次方》是一部深刻反映现代人生活状态与内心世界的剧集。它不仅讲述了一段段复杂的人际关系,还借由角色们的命运起伏,传达了许多关于人生哲学、社会生存法则和价值观探讨的经典语录。这些语录深刻地启示我们,...

    a的n次幂计算

    2. **递归算法**: 一种解决问题的方法,其基本思想是将问题分解成一个或多个较小的相似子问题,并逐步解决这些子问题直到达到某个基本情况(边界条件)。 #### 三、Java程序解析 该Java程序实现了`a`的`n`次幂计算...

    周期为2^n的二元序列k错线性复杂度的快速算法

    ### 周期为2^n的二元序列k错线性复杂度的快速算法 #### 概述 本文介绍了一种针对周期为2^n的二元序列k错线性复杂度的快速算法。该算法是在已有Games-Chan算法的基础上进行改进和发展起来的,主要目的是提高算法...

    世界上最大的互异完全n次数

    在数学中,一个完全n次方数是指可以表示为某个整数的n次方的形式,比如4是一个完全2次方数,因为4=2²。而互异性则意味着这些完全n次方数是不同的,它们不共享相同的因子。 这篇博客文章可能探讨了如何寻找或计算...

    cpp代码-(递归)计算某个数的e次方

    // 递归调用,计算x的-n次方 } } int main() { double base; std::cout 请输入一个数:"; std::cin >> base; std::cout 该数的e次方为: " (base, 10) ; // 通常选择一个较小的正整数n来近似计算 return 0; ...

    汇编2次方的科学运算源码

    在压缩包中的"2次方的科学运算"源码,很可能是通过一系列汇编指令实现了计算2的n次方的功能。这可能包括以下步骤: 1. 初始化:设置操作数,这可能涉及到将输入的n值加载到寄存器中。 2. 循环:如果使用位移操作,...

    根式的运算PPT学习教案.pptx

    通过例题1,我们看到如何求解不同数的n次方根,例如27的3次方根是3,-32的5次方根是-2,a6的3次方根是\( a^2 \)。这些例子进一步证实了奇数次方根和偶数次方根的性质。 例题2和例题3则讨论了0的n次方根,无论n为何...

    java函数呀

    2. 清空列表:`clear()` 方法移除列表中的所有元素。 知识点:清空列表的操作,用于将列表中的所有元素删除,达到列表初始化的效果。 3. 克隆列表:`clone()` 方法返回 ArrayList 实例的浅表副本。 知识点:...

    题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

    - 这个问题的解决方案的时间复杂度是O(3^n),因为有3个位置,每个位置有4种选择,所以总共有4的3次方种组合。空间复杂度是O(1),因为只需要常数级别的变量空间。 8. **软件工程基础**: - 这个问题的解决方案体现...

    30个常用python实现.docx

    2. 计算 x 的 n 次方:这里提供了两种方法,方法一是使用for循环,将x自乘n次;方法二是使用while循环,每次将x乘以s(初始值为1),直到n减至0。 3. 计算 a*a + b*b + c*c + ……:这个函数接受可变数量的参数(*...

    江苏省射阳县第二中学高中数学3.1指数导学案一无答案苏教版必修1

    - n次方根是指一个数的n次幂等于另一个数,记作 a^(1/n),其中 n 为正整数。比如,4^(1/4) 是四次方根,表示的是某个数的四次幂等于4的数。 3. **n次方根的性质**: - **性质①**:若 a^n = b,则 a 的 n 次方根...

    求n位水仙花数实例.zip

    对于n位数,程序需要迭代每一位,然后将每位数字提升到n次方并累加。为了处理不同位数的情况,程序可能需要动态调整循环次数,或者利用递归结构。同时,为了确保输入的有效性,程序可能还需要包含输入验证的部分,...

    计算机三级考试典型四位数的特点例题

    - **阿姆斯特朗数**:该数等于它的各位数字分别取n次方之后的和,n为该数的位数,如153(1^3 + 5^3 + 3^3)。 ### 二、典型例题解析 #### 2.1 例题一:识别特殊四位数 题目:找出以下序列中的所有回文数:2561, 4152...

    2013蓝桥杯C语言编程题库和答案 -

    2. 年龄的4次方是一个6位数。 3. 这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。 我们可以使用C语言编程来解决这个问题。下面是解决方案的代码: ```c #include using namespace std; int main(){ ...

    matlab常规操作.rar

    假设为n次方 命令行语句: A^n 3.求行列式 命令行语句: det(A) 4.求可逆矩阵的逆矩阵 命令行语句: inv(A) (二)常量及变量 1.变量 Matlab中的变量不需要声明,但变量名命名时第一个字符不可以是数字 2.常见...

Global site tag (gtag.js) - Google Analytics