107 lines
2.9 KiB
Markdown
Raw Normal View History

2018-08-14 20:45:40 +08:00
# 牛客网拼多多面试题
1. 一亿个数找出top 100(手写)
2018-08-16 20:51:25 +08:00
先对数据进行分分割然后构建一个长度为100的小顶堆。
2018-08-14 20:45:40 +08:00
2. 寻找结点的共同双亲
2018-08-16 20:51:25 +08:00
2018-08-14 20:45:40 +08:00
3. 一个数组 找出所有和为n的种类数目
2018-08-16 20:51:25 +08:00
> 先对数组进行排序然后使用一前一后两个指针慢慢找到和为n的种类数目
2018-08-14 20:45:40 +08:00
4. 给定两个稀疏矩阵 求乘法 要优化后的
2018-08-16 20:51:25 +08:00
作者团子s1
链接https://www.nowcoder.com/discuss/94066?type=2&order=0&pos=13&page=1
来源:牛客网
1. 在纸上写一个一个链表排序,并拍照发过去(实现了一个冒泡的链表排序,被鄙视之,嫌弃空间复杂度和时间复杂度)
2018-08-22 23:28:51 +08:00
链表排序,使用快慢指针,链表分割,然后融合。
2018-08-16 20:51:25 +08:00
2. 在纸上写一个Binary Search Tree的建立函数
二叉搜索,二分法
3. 说一说事务的ACID其中把事务的隔离性让我单独详细解释了一遍
数据库隔离:
事务隔离级别 | 脏读 | 不可重复读 | 幻读
---|---|---|---
读未提交read-uncommitted | 是 | 是 | 是
不可重复读read-committed | 否 | 是 | 是
可重复读repeatable-read | 否 | 否 | 是
串行化serializable | 否 | 否 | 否
4. 说一说幻影读
线程A读取表的内容线程B刚好在线程A读取的内容作了新增或者修改的操作。
5. 说一说HashMap和concurrentHashMap
常见问题
6. 说一说如何解决hash冲突的以及如果冲突了怎么在hash表中找到目标值
链表法,再哈希法
7. 说一说jdk1.8中对hashMap的优化
hash 链表长度大于8就改为红黑树
8. 说一说jdk1.8中对concurrentHashMap的优化
使用synchronized + cas,1.7 是用的Segment锁
2018-08-14 20:45:40 +08:00
1、手撕小顶堆
2018-08-16 20:51:25 +08:00
参考堆排序的内容
2018-08-14 20:45:40 +08:00
2、剑指offer题目
2018-08-16 20:51:25 +08:00
8.16 重新刷了一遍
2018-08-14 20:45:40 +08:00
拼多多:
逻辑思维,编程,项目经验,科研能力
java、python
推荐算法:
2018-08-22 23:28:51 +08:00
分析商品的品质对用户后续的影响,
=============8.19,拼多多线下面试=======
作者:讨饭好艰难
链接https://www.nowcoder.com/discuss/95940
来源:牛客网
一面:
1. 首先讲项目,然后说了蛮长的时间,基于项目内容的提问较少
2. B+ 树的原理
3. 问了JAVA的GC内容如何查到代码那里出现问题
4. 说了计算机网络从应用层到物理层的用处等等
5. 算法题,求一个字符串的最长连续不重复的子字符串。用了贪心算法找,算不难,后面时间不够,就没有手撕了。
二面:
1. 还是讲项目,然后这个面试官问了项目的实现逻辑,问的比较细,基本上应付过去了
2. HTTP和TCP的区别
3. HTTP和HTTPS的区别
4. 访问一个网站的过程
5. 手撕一个算法输入有序的数组然后把前K位依次追加到后面求最小的那个数。其实就是二分查找比较简单
6. 数据库的存储原理 B+ 树
7. B+ 树和AVL树在单点查询的情况下的效率区别。