
运算
pbxs
这个作者很懒,什么都没留下…
展开
-
Java Map的最高校遍历方法
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); for (int i = 0; i < 200; i++) { map.put("" + i, "value" + i); } // 第一种:普遍使用,二次取值 System.out.println("-------------第一种------------------原创 2020-10-29 16:01:44 · 199 阅读 · 0 评论 -
Java算法中O(1),O(logn),O(n),O(nlogn),O(n2)是什么
O(1),O(logn),O(n),O(nlogn),O(n2)是用于表示算法的时间复杂度的一个函数。时间复杂度常用大O符号表述,O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之间的关系,反应随着数据增值时间复杂度的渐变过程。比如我们统计排序算法复杂度时的对比表:常数阶O(1)O(1)就是最低的时空复杂度了,也就是耗时/耗空间与输入数据大小无关,无论输入数据增大多少倍,耗时/耗空间都不变。 哈希算法就是典型的O(1)时间复杂度,无论数据规模多大,都可以在一次计算后找到目标(不考虑原创 2020-10-22 16:32:48 · 1696 阅读 · 0 评论 -
Java位移运算符,左移运算符(<<),有符号右移运算符(>>),无符号右移运算符(>>>)
位移运算符操作的对象是二进制的位,可以用位移运算符来处理int型整数。public static void main(String[] args) { int x = 15; //1111 int y = 3; System.out.println(x<<y); //结果为120,1111000 System.out.println(x>>y); //结果为1,0001 System.out.println(x>>>y); /原创 2020-10-22 15:02:13 · 470 阅读 · 0 评论 -
二进制转十进制,十进制转二进制
十进制转二进制,采用短除法比如要将十进制的29转成二进制: 用29除以2,商写在下面,余数写在商的右边。除到商为0为止,然后倒序排列余数,得到11101即为二进制。二进制转十进制,采用按权相加法比如十进制29的二进制为11101,转换成十进制如下:说明:2的几次方那个次数是怎么确定的?方式一:比如从左数的第一位1,在它前面还有四位,那么它的次数就是为4。方式二:比如从右边开始,第一位是从0次方开始,以此类推。说明:任何除0以外的数的0次方都是1 。如3的0次方是1,-1的0次方也是原创 2020-10-22 11:12:25 · 1789 阅读 · 0 评论 -
Java中与&、或|、异或^运算符的使用规则与区别
Java中与&、或|、异或^运算符都是二进制的运算,通过对两组二进制的每一位对比得出结果。运算规则与&1:1时为1(概率25%),其他都为0(概率75%)或|0:0时为0(概率25%),其他都为1(概率75%)异或^0:0或1:1时为0(概率50%),0:1或1:0时为1(概率50%)运算步骤如图,两个数字X、Y,分别进行与&、或|、异或^运算:X、Y如果是十进制的话,先算出X、Y二进制值;把两组二进制值平行放在一起,右边对齐,左边不足补0;根据与&原创 2020-09-29 10:34:36 · 519 阅读 · 0 评论