2019年8月25日

一个32位整数二进制包含了多少个1

摘要: public static int countBinNum2(int num){ /* * 改进了算法 * 因为补码加上原码==pow(2,这个数的绝对值所换算成二进制的位数) * 利用负数所表示例如-5 == 1111 1111 1111 1111 1111 1111 1111 1111(0xff 阅读全文

posted @ 2019-08-25 21:35 无名小猝 阅读(535) 评论(0) 推荐(0) 编辑

kmp算法

摘要: "部分匹配值"就是"前缀"和"后缀"的最长的共有元素的长度。以"ABCDABD"为例, - "A"的前缀和后缀都为空集,共有元素的长度为0; - "AB"的前缀为[A],后缀为[B],共有元素的长度为0; - "ABC"的前缀为[A, AB],后缀为[BC, C],共有元素的长度0; - "ABCD 阅读全文

posted @ 2019-08-25 21:29 无名小猝 阅读(52) 评论(0) 推荐(0) 编辑

位运算符

摘要: Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。 位运算符作用在所有的位上,并且按位运算。假设a = 60,b = 13;它们的二进制格式表示将如下: 阅读全文

posted @ 2019-08-25 21:05 无名小猝 阅读(126) 评论(0) 推荐(0) 编辑

负数二进制在32位int表示

摘要: 在计算机中,负数以其正值的补码形式表达 什么叫补码呢?这得从原码,反码说起。 原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。 比如 00000000 00000000 00000000 00000101 是 5的 原码。 反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。 阅读全文

posted @ 2019-08-25 16:35 无名小猝 阅读(2054) 评论(0) 推荐(0) 编辑

导航