时间:2021-05-19
说到幂指数的运算我们就会用到Math.pow(doublea,doubleb),返回的结果是a的b次方。
在Java中,当我们计算2的n次方时,可以直接用Math.pow来计算。非常方便。
但是,已知一个幂的结果为M和幂的底数a,现在要求幂的指数n。Math中提供的有log(double)方法,但是只能传入一个参数,即M。那么问题来了,如何简单、方便、快捷的达到我们的要求呢?答案如下:
n=Math.log(M)/Math.log(a);
这个方法可以满足我们大多数幂指数的计算,但是每次访问的值和传入的值都是double,自己不想去转的话怎么办,我们有一种新的方案。
方案前提:幂指数的底数是2的倍数。
这里我们就用到了移位运算(移位运算是基于二进制来的,所以方案前提就是这个依据),如我们求2的3次方,我们可以用2<<(3-1)来计算出结果。
4的2次方,我们先要把4转化为2的2次方,再来2<<(4-1)来计算出结果。
下面这个方法实现的效果是我们传入一个2的倍数相加的两个数,比如12(是4+8),我们把它自动计算出[4,8]
再比如18,我们把它计算出[2,16]
再比如22,我们把它计算出[2,4,16]
/** * 以2的次方开始的转换成整型数组,字符串数组 * @param sum 传入派系的值,可以是一个派系的值,也可以是多个派系相加的值 * 2^1 + 2^2 这种 * 突然忘记移位操作也是一种指数幂的运算 * @return */private static int[] toUgroupArray(int sum){ if(sum < 0){ System.out.println("you have an eroor code"); } else if(sum == 0) { System.out.println("you have no choise code"); } else{ String binaryCode = Integer.toBinaryString(sum); System.out.println("binary code:"+binaryCode); int index = binaryCode.length() -1; String str = ""; for (int i=0;i<binaryCode.length();i++){ if(binaryCode.charAt(i) == '1'){ str = str + index +","; } index --; } str = str.substring(0, str.length()-1); System.out.println(str); String[] strArray = str.split(","); int[] result = new int[strArray.length]; //也可以返回一个字符数组 //String[] result2 = new String[strArray.length]; for (int i=0;i<strArray.length;i++){ //result[i] = (int)Math.pow(2, Double.parseDouble(strArray[i])); result[i] = 2 << (Integer.parseint(strArray[i])-1); } return result; } return null;}总结
以上就是本文关于java中幂指数值的运算代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
亲,大咖指数值在2018年2月28日早已升成:淘宝微淘号大咖指数值。新大咖指数值由內容使用价值、粉絲使用价值、行业竖直、经济收益、账户身心健康五一部分构成,更全
全文主题风格:淘宝网市场竞争外流指数值是什么含意?外流指数值高如何处理目前针对开实体店的淘宝卖家得掌握店面的各类指数值,先不用说每一项都得掌握深入,想成交额指数
文中考试大纲:手机上淘宝指数在哪儿?淘宝指数有什么用有关淘宝指数是物件指数值查询工具,可以清楚直接的认清物件的趋势分析和力度,给与客户确立的指数值探寻,便捷客户
淘宝达人粉絲指数值影响因素非常关键!淘宝达人粉絲指数值影响因素有什么?粉絲对每一个淘宝达人而言全是十分关键的。淘宝达人的粉絲指数值是一直转变、左右波动的。那麼危
淘宝达人粉絲指数值影响因素非常关键!淘宝达人粉絲指数值影响因素有什么?粉絲对每一个淘宝达人而言全是十分关键的。淘宝达人的粉絲指数值是一直转变、左右波动的。那麼危