腾讯 微信小店 (5.21 一面)

暑假实习

开局四道手撕 50min
实现地址冲突情况下的复制算法 memmove、PKCS#7 加密算法填充、LFU、链表排序

八股:
1. 你讲一下哈希表
   - 为什么数据量大的时候要改成红黑树呢?一直用链表不行吗?
   - 有关扩容,假如在数据量到达阈值时直接开新的哈希表进行扩容,那不会导致那一次的 set 操作用时特别久吗?有什么方案能保证这次 set 不会超时吗?
   - 你说异步扩容,那假如正在扩容的时候旧的哈希表被填满了怎么办?
   - 那你说满的话就将旧的哈希表锁住那和原本那个操作有什么不同呢?
   - 那直接写入新哈希表的话并发冲突怎么解决呢?
   - 你说的渐进式扩容具体是怎么实现的?
2. 讲一下进程、线程和协程
   - 进程间通信、线程间通信
   - 假如说有两台机器上的不同进程之间的不同线程,这两个线程之间想要通信怎么办呢?(我只回答了网络通信)
   - 协程是更轻量的一个线程对吗?但是一个线程只能同时执行一个操作,那我利用这个线程直接串行执行不就行了吗?你使用协程还需要一些上下文管理、还会有切换的开销什么的?为什么会需要所谓的协程呢?(我对协程了解不多,而且java里面经也没怎么见过这个,被问死了)
全部评论
佬,怎么样了,我被这个捞了,看你这个面经,感觉腾讯一如既往的底层拷打
点赞 回复 分享
发布于 05-27 18:13 广东
佬,你也是华工的啊,四道手撕也太狠了吧
点赞 回复 分享
发布于 05-24 23:29 广东

相关推荐

评论
3
3
分享

创作者周榜

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