涂鸦智能之面试
2021/12/13 13:16:51
本文主要是介绍涂鸦智能之面试,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
这次面试的确收获比较大,面试官是个大神,问的问题都是比较经典的,下面说一下问的几个算法问题。
1. 给你文件里面存的是IP,这个文件有20G那么大,让你统计出出现最多的IP,给你的内存是20M
2. 给你一个垃圾邮箱的列表,这个列表列表比较多的,然后给你一个邮箱,让你判断是不是垃圾邮箱.
3. 给你一个mp3格式的语音,让你转化为汉字(提出思路)。
当时面试的时候我是一个也没回答出来,太虐心了,好歹是练过三年的算法,其实前两个好好想想是可以回答上来的,首先说一下解题思路。
第一题:
首先是IP是2^32个,数量是比较大的,所以采用数组下标来统计是不行的,那样我们可以采用一个比较好的哈希算法来将IP进行分组,然后在分组来统计。
我采取的哈希函数是h(ip)=IP%10000,这样就将IP分为10000份了,每一份都是无序的,并且是不同的,但是有个区间范围,下面就是对每一组进行统计。我采取的是排序二叉树进行统计,节点上存的是左右子树和IP次数。
最后遍历二叉树就知道哪个出现的最多
第二题:
将邮件列表按照首字母分为a,b,c…26文件
再分为次位数为a,b,c….文件,这样一直往下找.
第三题现在还不会,等解决了,再来重新编译。
算法问题以为是必拿分的,可是一分没拿,心态爆炸。
下面就是问一下Java问题,
1. 创建线程的方法,这个我回答上来的,就是单词不会拼,写出来的。
接着又问这两个方式适用于什么时候,也就是两者的优点,这个给我问蒙了,其实仔细想想就知道了,一个继承一个接口,当然在一个类还需要继承其他的类的时候,创建线程的时候肯定只能接口实现了,还是没有总结,唉。
2. 为什么SQL语句中的索引能优化SQL语句。我只是回答了这个索引相当于一个hash值,但是这个回答面试官并不认可,只是说这不是官方的回答,这个问题我只会这点,啊,再次心态爆炸,只能若若的回答,我只了解这些,其实下午我看了索引,忘记了。
3. 怎样查看jvm的内存?这个问题我理解成检查ubuntu系统内存问题,又只能若若的说我没有了解过,还解释一下我们现在排错都是在eclipse上排错。显然面试官会反驳你。
就记住这些问题,其他的忘了。
最后问了面试官我还需要进行哪些方面的学习,当然我已经知道自己肯定不能入职,回答的太差了,所以问问自己的不足,下去好好的补。唉!
面试我提前三个小时去的,还在住房公积金办事所,坐了2个小时,复习一下算法,还是GG,下面富贵论坛继续加油。基础的东西还是要知道的。
这篇关于涂鸦智能之面试的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27消息中间件底层原理资料详解
- 2024-11-27RocketMQ底层原理资料详解:新手入门教程
- 2024-11-27MQ底层原理资料详解:新手入门教程
- 2024-11-27MQ项目开发资料入门教程
- 2024-11-27RocketMQ源码资料详解:新手入门教程
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器