58一面面经(已挂)

渣渣一枚,大家不要见笑,视频一面,效率很高,面试官很和蔼的,年声音也很温柔,没有问到特别难的问题。但是有些知识确实自己没有涉及到,比如dubbo和zookeeper,只是在项目中使用了,并没有特别的了解底层的实现,还有一些细节。求助牛客大佬们给点这方面的资料啊,还有请大家指出我面试中存在的问题,共同加油吧,谢谢了。

  1. 自我介绍
    简单的介绍了下学校专业方向。
  2. 项目介绍
    从简历里挑了一个项目介绍。介绍了项目的结构,自己做的部分。
  3. zookeeper的作用
    dubbo的注册中心,用来给消费者和生产者订阅和发布服务的。
  4. 每次都要去请求zookeeper吗?
    不是,dubbo请求后会有缓存。
  5. dubbo服务缓存在哪里
    在服务器的内存吧,不清楚。
  6. 如果调用服务的地址发生变化,服务调用者怎么知道
    zookeeper应该会通知订阅者,具体不太了解。
  7. JVM,讲了GC,回收算法,然后问在实际中,什么情况下会遇到新生代对象特别多,而且回收不了?
    没有想出来。
  8. B+树,实际应用。
    介绍了概念,然后举了一个例子,在实际中数据库中的索引用到了该数据结构。
  9. 为啥要建索引,时间复杂度。
    引出索引后,问我为啥建索引,我说能提高查询的效率,比较快,然后问B+树的时间复杂度,回答logm(N),m是B+树的叉数。
  10. 写一个函数找出一个整数数组中第二大的数字。
    问了面试官有啥限制吗,说没有,然后就想起了滴滴的笔试题,快速的写了一个返回第k大数字的函数,使用了Arrays.sort(),然后就给自己埋了一个深坑,问sort底层如何实现的,我说源码确实没看过,我说我觉得应该是快排,然后问有没有比快排更快的,我说堆排可以实现,建一个最大堆,没调整一次就可以得到一个最大值,第k大的只要调整k次就行,然后问了时间复杂度,O(NlogN),问我有没有更快的,我问还有更快的吗?(面试官笑了说我就是问问),然而我下来发现之前的问题都被自己带偏了,直接遍历一遍数组就可以得到第二大的数,O(N),确实是比堆排快啊。。。

然后就注定结束了技术面试,一些常规问题:

  1. 北京上海选哪个
    北京。接着就是下一个问题。
  2. 后台、客户端、大数据算法选哪个?
    什么,很懵逼啊,我当时没有选岗位吗?我说后台吧。
  3. 有啥问题问我?
    我已经很懵了,问了一句:结束了吗?
    面试官说如果我这里通过的话,下午会有复试的。嗯是挂了。
  4. 然后还有什么问题吗?
    如果过了啥时候去实习呢?
    这是hr统一安排的。
  5. 还有啥问题吗?
    没有了。

谢谢,谢谢。
再见,再见。

#58集团##Java工程师#
全部评论
数组第k小的数,百度一下BFPRT算法
点赞 回复
分享
发布于 2017-08-29 16:18
即将上战场
点赞 回复
分享
发布于 2017-08-29 15:16
联易融
校招火热招聘中
官网直投
贴个快排源码分析,供参考: http://www.cnblogs.com/gw811/archive/2012/10/04/2711746.html
点赞 回复
分享
发布于 2017-08-29 15:39
第k大的时间复杂度和k有关,在k和N相当的情况下,最坏情况都是O(NlogN),没有一直O(N)的。。
点赞 回复
分享
发布于 2017-08-29 15:47
用到dubbo和zookeeper的项目是实习还是学校的?
点赞 回复
分享
发布于 2017-08-29 18:29
求解什么时候会遇到新生代对象特别多回收不了?我怎么记得同一代只要大于一半就会递交到老年代啊
点赞 回复
分享
发布于 2017-08-29 18:31
有预约面试吗
点赞 回复
分享
发布于 2019-10-10 16:26

相关推荐

- 自我介绍- 讲讲你目前在蔚来测试什么产品?你在其中的工作是什么?你在工作中使用的是什么自动化测试框架?case 的通过率如何?- 你的 Python 水平如何?- 看到你之前有做过开发,现在有做测试,你今后的规划是什么?- 我们做的是偏底层网络的,对网络知识的要求可能会比较高,你这方面怎么样?- 讲讲 TCP/IP 五层模型?- 了解 ARP 吗,讲讲这个协议?- 说下你对 TCP 和 UDP 的了解和见解?TCP 遇到堵塞是如何解决的?了解过粘包吗,如何解决?- 简单说说 TCP 三次握手?了解半连接和全连接吗?- 简单说说 TCP 四次挥手?了解 TCP 连接中的一些状态吗,比如 TIME_WAIT 和 CLOSE_WAIT?- 有了解过 PING 泛洪(PING Flood)吗?如何防范?- Linux 接触的多吗?用过 Ubuntu 吗?用过哪些网络抓包工具?有没有了解 Linux 上的一些网络相关工具,例如 tcpdump?- 对虚拟化了解吗?(不太了解)当我们从虚拟机访问百度时,会经过什么样的流程?- 讲讲 TCP 报文格式?头部有多大?- 对于一个 2000 字节的 UDP 大包,MTU 为 1500 字节,IP 层会作何处理?- 了解(数据包的)分片和重组吗?如何判断数据包是否分片?- 刚才我说到了 ARP,ARP (报文)是通过什么方式进行传播的?(广播)了解广播和组播的区别吗?- DHCP 了解吗,简单讲讲?- BPS 和 PPS 了解吗?- Python 这边你之前用的都是哪些版本(他们用 2.7,太草了)- 写过 Socket 吗,用过哪些库?- 对 IPv4 和 IPv6 有什么了解吗?知道 CIDR 吗?- 有了解过最长前缀匹配吗?有没有在自己的机器上配置路由表?- NAT 了解吗?简单说一下?了解 SNAT 和 DNAT 的区别吗?- 有用过 scapy 吗?- 代码题:现有一个包含四个元素的 list,每次调用接口时都需要从 list 中随机选出一个(索引)不重复的数,应该如何设计代码?- 场景题:当你发现你上网很慢的时候,你如何进行排查?- 反问
点赞 评论 收藏
转发
3 20 评论
分享
牛客网
牛客企业服务