数据结构与算法
王英豪很ok,
这个作者很懒,什么都没留下…
展开
-
JDK8中HashMap链表转红黑树的阈值为什么选8?为什么用红黑树做优化?
为什么会引入红黑树做查询优化呢? 在平常我们用HashMap的时候,HashMap里面存储的key是具有良好的hash算法的key(比如String、Integer等包装类),冲突几率自然微乎其微,此时链表几乎不会转化为红黑树,但是当key为我们自定义的对象时,我们可能采用了不好的hash算法,使HashMap中key的冲突率极高,但是这时HashMap为了保证高速的查找效率,就引入了红黑树来优化...原创 2019-11-03 21:33:18 · 8778 阅读 · 7 评论 -
计算1+2+3+...+n;不许用乘除法和if、 while、switch、for等关键字计算《三种方法!》
题目描述 求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 题目思路 思路1:递归+短路,当当前栈的入参n为0时,短路后面的递归语句,就可以达到终止递归的效果; 思路2(Java实现):利用异常机制,当当前栈的入参n为0时,制造异常使程序不走递归函数,catch块返回0即可; 思路3(C++实现):利用boo...原创 2019-10-28 11:14:04 · 578 阅读 · 0 评论