拼多多算法实习生二面面经 6.7

感觉好难啊, 和一面的感觉差太多了, 面试官也没开摄像头, 得不到反馈

1.自我介绍

2.为什么读博

3.之前是做自动驾驶的, 为什么现在要来pdd算法

4.介绍一下项目, 介绍了半天, 也没深问就过了

5.第一道算法题, 问至少要多少人才能保证有两人同月出生的概率大于90%. 一开始一维手推, 推半天推不出来, 然后面试官说可以写代码试试. 我的思路是暴力枚举, 首先假设取n个人, 那么每个人都能分配到一个月中, 也就用$12^n$ 种情况, 然后考虑没有重复月的情况, 就是在12个月中选n个月, 这是个组合数, 另外分配人需要考虑人的排列, 再乘上$n!$, 也就是不可能的情况的概率是 $n!*C(12,n)/12**n$ 然后遍历n从1到13, 第一个概率小于0.1的退出就可以. 思路感觉没问题, 但是我好像有地方写错了, 不能自己运行, 面试官也没说什么

6.第二道算法题, 字符流中第一次出现的第一个字母, 比如google, 第一个字符g, 出现一次, 输出g, 第二个字符o, o和g都出现一次, 但是g出现靠前, 输出g, 第三个字符g, 只有g出现一次, 输出g, 第四个字符g, 没有出现一次的字符, 输出'', 第五个字符l, 只有l出现一次, 输出l, 第六个字符e, l和e都出现一次, 但是l更靠前, 输出l. 我的思路是维护一个哈希表记录每个字母出现的个数, 同时再用一个列表存储字母出现的顺序. 遍历字母, 如果这个字母没有出现, 那么加入列表中, 然后更新哈希表, 如果字母出现了, 只更新哈希表. 然后从前往后遍历列表, 判断遍历到的字母的出现次数是不是1, 如果是1, 就加入答案中. 如果遍历完都没找到就将''加入答案中. 这个不能调试, 中间定义变量重名了, 错了三次...无语了, 最后面试官说, 列表中靠前的已经出现超过一次的字符存储是不是没什么用, 答可以用队列优化

7.第三道算法题, lc10. 正则表达式匹配. 想到了dp, 但是不能调试, 完全写不对, 后来给面试官说了思路, 面试官说思路没问题. 中间问面试官, 两个字符串是不是一个包含.* 一个不包含, 面试官说都可能包含, 感觉题目瞬间上了一个难度

8.问问面试官的建议, 面试官说感觉我代码能力很强, 后面上手应该很快, 但是需要想清楚, 因为和自动驾驶不太搭(主要不是自动驾驶不要我嘛, 才想着转方向)

感觉有点凉, 全程太紧张了, 只有txt编辑器确实有点难受, 感觉没有平时发挥的好, 许愿三面!

#拼多多##算法##实习#
全部评论
感觉寄了,第一题想要每个人都不一样,第一个人可以选12个月中任意一月,第二个人可以选11个人月中任意一月,第n个人可以选13-n个月中的任意一月,那么n个人不存在同月的概率就是12*11*...*(13-n)/12**n,虽然和我写的公式一样,但是明显这个更简单😭😭
1 回复 分享
发布于 2024-06-07 22:53 吉林
怎么感觉你的二面压力给的有点大啊,我的二面全程轻松愉快,先问了我的科研项目,然后问一个线性代数基础问题,然后就考了一个算法题,在面试官的一步步提示下做出来了,然后就开始闲聊了
点赞 回复 分享
发布于 2024-06-08 13:11 安徽
第一题很经典呀,普林斯顿的概率论教材开篇就是那道题
点赞 回复 分享
发布于 2024-06-07 16:53 辽宁

相关推荐

09-19 13:59
门头沟学院 Java
用微笑面对困难:Trae一下,如果真成了,他用了直接发字节起诉代码版权,,这个代码不商用是没问题的如果没成也是情理之中的。
点赞 评论 收藏
分享
从大一开始就开始学习Java,一路走来真的不算容易,每次面试都被压力,不过这次终于达成了自己的一大心愿!时间线和面经:8.17-投递9.1-一面实习+项目拷打看门狗机制讲一下redis加锁解锁的本身操作是什么Lua脚本是干什么的udp和tcp讲一下流量控制讲一下令牌桶算法说一下大端和小端是什么线程和协程有什么区别怎么切换协程切换的时候具体做了什么对于程序来说,你刚才提到的保存和恢复现场,这个现场有哪些信息udp优势现在有一个客户端和服务端,要实现TCP的通信,我们的代码要怎么写服务器怎么感知有新的连接怎么处理多个客户端的请求连接TCP怎么处理粘包和分包现在有两个文件,然后每个文件都有一亿条URL,每个的长度都很长,要怎么快速查找这两个文件共有的URLHashmap底层说一下怎么尽量提升插入和查询的效率如果要查找快,查询快,还有解决非空的问题,怎么做LoadingCache了解吗手撕:堆排序9.4-二面部门的leader,超级压力面拷打实习+项目,被喷完全没东西类的加载到垃圾回收整个底层原理讲一遍类加载谁来执行类加载器是什么东西,和进程的关系Java虚拟机是什么东西,和进程的关系如果我们要执行hello world,那虚拟机干了什么呢谁把字节码翻译成机器码,操作时机是什么Java虚拟机是一个执行单元吗Java虚拟机和操作系统的关系到底什么,假如我是个完全不懂技术的人,举例说明让我明白一个操作系统有两个Java程序的话,有几个虚拟机有没有单独的JVM进程存在启动一个hello world编译的时候,有几个进程JVM什么时候启动比如执行一条Java命令的时候对应一个进程,然后这个JVM虚拟机到底是不是在这个进程里面,还是说要先启动一个JVM虚拟机的进程垃圾回收机制的时机能手动触发垃圾回收吗垃圾回收会抢占业务代码的CPU吗垃圾回收算法简单说说垃圾回收机制的stop the world存在于哪些时机垃圾回收中的计算Region的时候怎么和业务代码并行执行假如只有一个线程,怎么实现并行Java为什么要这么实现Java效率比C++慢很多,那为什么还要这样实现Java虚拟机到底是什么形式存在的说一下Java和C++的区别还有你对Java设计理念的理解无手撕面试结束的时候,我真的汗流浃背了,面试官还和我道歉,说他是故意压力面想看看我的反应的,还对我给予了高度评价:我当面试官这么多年,你是我见过最好的一个9.9-三面临时通知的加面,就问了三十分钟项目9.11-hr面问过往经历,未来计划,想从腾讯实习中得到什么?当场告知leader十分满意我,所以直接ochr面完一分钟官网流程变成录用评估中,30分钟后mt加微信告知offer正在审批9.15-offer这一次腾讯面试体验真的不错,每个面试官能感觉到专业能力很强,反馈很足,比起隔壁某节真是好太多以后就是鹅孝子了
三本咋了:当面试官这么多年你是我见过的最好的一个
你面试被问到过哪些不会的...
点赞 评论 收藏
分享
评论
5
13
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务