京东一面面经

参加了京东的京东云部门的一面,面试问题如下:

1、聊项目,然后延展出了一些负载均衡、哈希一致性、数据热备、TCP与UDP的问题;

2、聊了聊线程池,从线程池使用原因到JUC中线程池的实现细节;

3、如何设计一个像京东商城那样的高并发网站,聊了挺多(答案参见《大型网站技术架构核心原理与案例分析》);

4、一道算法题,仅仅只是说思路:0-99共100个数字,现在缺失了两个,如何快速找出缺失那两个?

    我简单说了说思路:就是简单地将数字映射到一个下标范围为[0,99]的数组,遍历两遍就能将找出缺失元素。

    面试结束后我想了下..这也太耗费空间了,对于缺失元素x和y完全可以计算得出x*y和x+y,然后根据求根公式计算这个方程组,就可以在常数时间复杂度得到结果。

5、一道算法题,纸上写代码:输入是一个字符串,字符串中包含任意字符,也包含数字字符。现在要根据这个字符串中的数字字符得到最大能组成的数字。

    我当时的思路是使用PriorityQueue,传入合适的Comparator使其变成最大堆来存放数字,然后每次调用remove()方法获取最大数字字符,添加到结果中,最后使用Integer.parseInt(String str)函数来解析这个字符串。




已确定通过一面,等候二面。

发布了106 篇原创文章 · 获赞 285 · 访问量 59万+

猜你喜欢

转载自blog.csdn.net/qq_35580883/article/details/80017097