java
not_in_mountain
这个作者很懒,什么都没留下…
展开
-
美团秋招笔试题--可乐瓶盖
某次买可乐集瓶盖活动中有5种不同的瓶盖以等概率出现,每买一瓶汽水可得到一个瓶盖,集齐所有瓶盖所买汽水瓶数的期望,与以下哪个结果最为接近? A.9 B.11 C.13 D.15 答案是B。标准解法是: 取到一种不同瓶盖的期望次数为1; 在已经取到一种瓶盖的情况下,再取到一种不同的瓶盖的期望次数是1/(4/5)=5/4; 在已经取到两种瓶盖的情况下,再取到一种不同的瓶盖的期望次原创 2017-08-30 00:11:03 · 1134 阅读 · 0 评论 -
01背包最佳写法(最简洁)
学算法有个非常重要的点就是: 代码干脆简洁,容易记忆。 否则每次复习时都要花费大把精力来再次熟悉各种复杂繁琐、又没有解释清楚的代码: (吐槽一下《计算机算法设计与分析》这本书,代码注释与格式十分不友好,看得费神,希望再版时有所改进)。 01背包关键代码如下: //dp[i][j]表示前i个物品能装入容量为j的背包中的最大价值//初始化dp[i][0]=0,i取值[0,dp.原创 2017-08-29 21:24:53 · 641 阅读 · 0 评论 -
跳台阶、跳台阶升级版(算法)
跳台阶、跳台阶升级版(算法)原创 2017-08-31 09:43:40 · 577 阅读 · 0 评论 -
final,finalize,finally的区别
final: 1、final修饰类,那么这个类就是最终类,该类中的所有方法都不能被重写。 但是final类中的成员变量是可以改变的,要想final类中的成员变量的不可以改变,必须给成员变量添加final修饰。 2、final修饰方法,那么这个方法是最终方法,不允许任何子类重写该方法,但子类仍可以使用该方法, 注意:final参数用来表示这个参数在这个函数内部不允许被修改。 3、f转载 2017-09-02 16:07:49 · 256 阅读 · 0 评论 -
类加载过程ClassLoader分析
参考书:《深入理解java虚拟机》周志明 著 类从加载到内存开始,到卸载出内存为止,生命周期为以下7个部分: 1、加载loading 2、验证verification 3、准备preparation 4、解析resolution(统称为连接) 5、初始化initialization 6、使用using 7、卸载unloading。 注:解析的顺序不一定在初始化前面,例如有些为了支持动原创 2017-09-02 22:30:15 · 214 阅读 · 0 评论 -
HashMap与Hashtable的区别
首先要明确的是: ①Hashtable是一个古老的map实现类,但是由于那时候还没有map接口,因此它的方法相比map接口老的繁琐, 具有elements和keys两个方法,对应map接口的values和keys;而HashMap实现了Map接口。 其次,再来分析具体区别: ②Hashtable作为早期集合类,考虑到了线程安全的问题,但也因此效率较低; HashMap适用原创 2017-09-03 10:05:07 · 209 阅读 · 0 评论