蚂蚁金服面经
这次面试中三道发散题很有意思,记录在此和大家一起探讨一下:
1.快排的存储结构用链表和用数组有什么区别?
当时分析了时间复杂度用双指针不会有什么影响,但是空间复杂度没有很好的想法;难道是多用了辅助头节点?
2.用key-value存储用什么结构?失效机制?链表的话查询效率低怎么改变?
回答的时候说了链表和哈希表来实现,最近访问的调到表头,哈希表存的value引用指向链表里存的value;也许可以按value来存
事后觉得可以从LRU和LFU角度考虑不同情况的失效机制;
3.某人练习射箭,射中靶心的概率为1/10,问:此人射10次中一次的概率和此人射10000次中<=999次的概率哪个更大?
想到了这是一个n次独立重复事件,用直觉猜到是后者,但是想了半天也没思路。
事后查到公式:某事件A恰好发生在第k次的概率是多少p(1-p)^(n-k)
PS:这次面试开始不久突然接到导师电话,斗胆挂掉,太刺激了。严重影响了后面的面试状态,以后还要练习的情绪的稳定能力。
#阿里招聘##蚂蚁集团##面试题目#
查看2道真题和解析