2018-09-15华为面试总结

1.没答上或者答得虽然他认为对了但是我其实有点含糊的题目

0 .我说我喜欢数学,也比较擅长数学
问:素数是无限的吗,如果是给出证明
答:".......",噗,让我想想,我在想是不是用递归法,或者反证法,先假设它是有限的
问:哈哈,我开玩笑啦,热个身
1.comparator,comparable
之间的关系以及如何实现collections.sort(a,b)
面试的时候我以为一个是类,一个是接口,后来面试官给我解释,我还不信(哈哈,蛮搞笑的)看来他对于这方面还是蛮熟悉的,下面是一个大佬博客的关于这个的解释,写的非常棒
http://www.cnblogs.com/skywang12345/p/3324788.html

2.二叉树和B+tree
他问数据库怎么优化:我答sql语句(写好相关语句,走索引),分区(水平,垂直)分库
他问索引原理是什么,答B+tree,他问B+tree实现排序的依据是什么
幸好因为对自己有点B数,所以昨天特意看了点B树,虽然看了还是对B树没多大点B数。
今天面试问了mysql的索引,我只知道和B树有关,因为没B数,我回答了B树和二叉树;面试官因此觉得我对B树没点B数,其实我对二叉树和B树根本就没B数,忽然记得好像有个B+树,靠着推理,我改成了B+tree,居然答对了;然后忽然问我btree的排序原理,我支吾了下,心想“我的天,我真的没B数,不要问了,二叉二叉树,会不会是二分法",小声说了句“二分法”;“答对了”,面试官比我还高兴,我感觉他恨不得为我鼓掌。。
哈哈,但是今天看了下面这位大佬写的,我终于有点B数了,下次再也不怕问B树了(还没看完,差不多懂了,看到B+树了)
https://zhuanlan.zhihu.com/p/27700617
3.entryset,entry的介绍和使用
这个大佬写的还行,不是特别好
http://www.cnblogs.com/ningvsban/archive/2013/05/06/3062217.html
4.关于socket
他问tcp客户端怎么发消息到服务端 ,写一个socket客户端
这个教程讲的比较详细,但是关于inputstream和outputstream还是有点不理解(以后再看
http://wiki.jikexueyuan.com/project/java-socket/tcp.html
5.他问classpath是什么
第一个介绍的还行
https://www.jianshu.com/p/d63b099cf283
第二个介绍的不错
https://blog.csdn.net/pengpenglin/article/details/1682858
6.一道简单的编程题
ant cat dog ant 1.统计每个出现的次数,2.按照出现的频率排序(先是实现,接着换种comparator的方法实现下),3.我写的方法的时间复杂度
按照出现的频率排序,貌似他想考我怎么用comparator实现这段代码,我一开始还真是误解了,现在大概知道的
相关实现方法见这位大佬博客,写的也很棒,hashmap的排序方式
https://www.cnblogs.com/lovebread/archive/2009/11/23/1609121.html
最后面试结果:我好像看到他们有个打分的表(但是不让我看,我偷喵到的,怪我现在眼镜度数太低,看的不是很清楚),大概有六七个栏目,每个栏目都分0,1,2,3级(从优到差,应该不是从差到优吧,不然我早就不可能通过面试了。。哈哈),我好像得了两三个0级,其余都是1级

你可能感兴趣的:(2018-09-15华为面试总结)