您的位置:首页 > 其它

【面经】2016年【阿里实习内推电面】

2017-01-03 14:52 323 查看

Java基础:

1、对于Java的理解、Java的数据结构

2、TreeMap的结构。TreeMap与HashMap的不同之处

红黑树

3、HashMap的实现原理

常见的解决hash冲突的方法:

1、开放地址法;2、线性探测法;3、链地址法;4、二次探测法;5、伪随机探测法;6、再散列(双重散列,多重散列);7、建立一个公共溢出区

4、怎么解决Hash碰撞(重写hashcode函数,多次hash,多次不同算法hash)

常见的散列函数:直接定址法,数字分析法,平均取中法,取余法,折叠法,随机法

5、如果发生内存溢出怎么办

-Xmx:Java Heap最大值,默认值为物理内存的1/4,最佳设置应该视物理内存大小及计算机其他内存开销而定;

-Xms:Java Heap初始大小。

-Xmn:Java Heap young区大小,不熟悉最好保留默认值

-Xss:每个线程的Stack大小,不熟悉最好保留默认值

6、GC机制,新生代什么的

堆分为,新生代和老年代,对于不同的区域采用不同的算法

7、Java web容器

8、https SSl

多线程:

1、如何唤醒sleep线程

对线程实例调用interrupt方法,打断线程的暂停状态,从而线程立刻抛出InterruptedException。可以在catch块中return

2、多线程数据库操作如何避免读脏数据

3、乐观锁

4、线程抛出异常会发生什么

数据库:

1、乐观锁

2、多线程操作数据库,如何避免读取脏数据

数据结构与算法:

1、一个函数,输入整形,输出倒序字符串(处理整数和处理字符串,哪个效率高)

2、一个jvm只有1G内存,现在有一个3G的文件全部存放数字。问如何获取这个文件中的top100的数字。

实现:每次读入一部分。用什么排序算法最快

优化:充分利用内存,是否可以考虑多线程

3、排序算法,以及排序算法的选择,时间复杂度

hr:

印象最深的项目

收获最多的项目

为什么选择gis

成绩排名 奖学金
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  阿里