Java
playmakerlby
hello world
展开
-
扩展的fibonacci数列(矩阵快速幂)(Java)
在求fibonacci数列的第n项时。如果n很大,可以使用矩阵快速幂的方法。1.通过递推公式得到矩阵。an=an−1+an−2;得到2个向量,v1=[an,an−1],a_n=a_{n-1}+a_{n-2};得到2个向量,v_1=[a_n,a_{n-1}],an=an−1+an−2;得到2个向量,v1=[an,an−1],v2=[an−1,an−2],矩阵快速幂求数列第n项不再赘v_2=[a_{n-1},a_{n-2}],矩阵快速幂求数列第n项不再赘v2=[an−1,an−2],矩阵原创 2022-02-08 14:51:18 · 307 阅读 · 0 评论 -
任意进制转换 Java
为了表达大于10进制的数字的表达。首先定义编码方式。‘A’-'Z’表示10-35,‘a’-'z’表示36-61。之后本文使用2个方法。一个是将任意数转换为10进制数。另一个是将10进制数转换为任意进制。需要注意的两点。1.字符串索引为0的地方是最高位。乘方时要注意。2.通过append生成的字符串是逆序的。需要reverse()操作。public class SolutionC { public static void main(String[] args) { } pr原创 2022-01-24 11:43:05 · 394 阅读 · 0 评论 -
丑数(进阶)(Java)
丑数作为一道经典题,在leetcode和剑指offer中都有出现过。此处列出一个链接来了解其原本的样子和解法。https://zhuanlan.zhihu.com/p/314293665之后,本文对其进行扩展。给定素数集合S={p1,p2,…,pk},而丑数是指一个正整数满足所有质因数都出现在S中,1默认是第1个丑数。例如S={2,3,5}时,此时前20个丑数:1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 25, 27, 30, 32, 3原创 2022-01-24 11:29:19 · 412 阅读 · 0 评论 -
java求大数幂次的方法
首先,引入问题。求ab%c的值。首先,引入问题。求a^b\%c的值。首先,引入问题。求ab%c的值。其中a=72356825451438,b=53727354327038,c=27335634901889首先。a的b次方是一个非常大的值。BigInteger类也不能储存。所以使用快速幂的方法。连同BigInteger.每次乘方的结果都要模c。并且BigInteger的使用也是值得注意的。public class SolutionD { public static void main(S原创 2022-01-16 18:28:32 · 1192 阅读 · 0 评论 -
java中给int赋值开头为0的数字的情况分析
java中给int赋值开头为0的数字的情况分析在java中,定义int i=09;是错误的。但定义int b=012;则是正确的。而且在输出b时,结果是10,而不是12.其原因是因为java 把0开头的数字认定为8进制数。9>8.所以会报错。而012是8进制的12,等于十进制的10....原创 2021-10-01 22:46:31 · 2860 阅读 · 0 评论