滴滴、北京合链、小米、Klook 校招golang工程师面筋

滴滴出行

一面先聊项目,二叉树非递归遍历、快排、实现一下智能指针;

二面redis底层及相关知识;

  1. 对golang的测试问的很久,性能调优方面的;

  2. redis库的场景问题还有些底层的实现问题;

  3. 问等待所有goroutine结束,怎么做?
    答使用sync.WaitGroup。

  4. map的底层实现。

  5. redis集群?一致性hash?

  6. go的测试?

三面聊人生理想。

北京合链共赢科技有限公司

  1. gorintine是怎么调度;

  2. gc算法;

  3. io模型;

  4. 考察切片比较,深拷贝的问题;

  5. 合并两个有序数组;

  6. 考察for ... range 陷阱。

总体评价面试官很大气,不揪小节不放。

小米

  1. 切片和数组差别、go多协程之间怎么同步;

  2. 通道;

  3. sql的锁;

  4. left join和inner join的区别;

  5. 怎么看goroutine之类的。

最后面试完后,直接问我期望工资多少,我报了个数,然后他说他不是技术总监,技术总监出差了。

Klook 客路旅行

限制你半小时内做完6道题,题目做对了,就走技术面了。

  1. 你在开发中碰到什么技术难点;

  2. 有个兔子的问题,一对兔子第三个月后就开始繁殖,不考虑死亡,求兔子数。
    答:其实就是一个斐波那契数列,我是用循环解决的,当然你也可以用递归: func rabbitCount(m int) int { sum:= 1 for m >=3 { m-=3 sum+=m } };

  3. 百万级Mysql怎么处理。
    答:1-主备 2-读写分离 3-集群 4-负载均衡 5-查询缓存 6-raid

  4. 怎么用go实现一个栈。
    答:其实就是一个切片的问题,注意pop的时候一定要注意切片长度检查,否则会panic。

  5. 有个考察defer和panic执行顺序的问题。
    答:defer是先注册后调用(最后注册的最先被执行)。所有defer都执行完后,才会显示panic里面的东西。

#滴滴##小米##面试题目#
全部评论
感谢楼主分享面经,分享面经的都能拿到好的offer
1 回复 分享
发布于 2022-02-25 21:38

相关推荐

鼠鼠是前端,没准备好 ,答得好烂24min1. 自我介绍2. 问了是否考研3. 项目挑一个点讲一下   项目是商城,讲了一下商品卡片这个复用性比较高的组件。4. 这个组件用到了props,都要传入什么数据?    商品图片url,名称价格什么的。    5. vue不是有多种模式嘛,用什么模式做的    setup的语法糖+组合式API6. ref和reactive的区别?如果ref包含的更多那为什么不直接用ref?    答得不好,这里贴出参考(来自ds):    #### 区别:    ref:万能型,适合基本类型或需要重新赋值的引用类型,访问需 .value        reactive:专精型,仅用于对象/数组,直接访问属性,性能更优    #### 不都用 ref 的原因:    **代码更干净**:对象用 reactive 避免多层 .value    **性能更好**:reactive 代理整个对象,适合复杂数据    **解构保留响应性**:需配合 toRefs 使用更规范    #### 怎么选    → 基本类型/需替换整个对象 → ref    → 复杂对象/无需替换 → reactive    → 混合使用效果最佳7. 讲一下项目中比较复杂的点    讲了订单流程,答得也烂8. 除了js,用得比较多的语言是什么?最近做了什么?    python用得多,讲用来做了个课设和毕设,机器学习相关,还拷打了一波毕设。9.  问一个通用一点的,怎么实现hashmap?    参考:HashMap 使用数组作为底层存储,通过哈希函数将键映射到数组索引位置,并用链表或红黑树解决哈希冲突。10. hashmap怎么扩容?    参考:扩容时,数组容量通常扩大为原来的 2 倍,所有元素根据新的哈希值重新分配到新数组中。通过优化如分步迁移、链表拆分和红黑树退化,确保扩容过程高效且不影响查询性能。11. 时间关系,你这边的情况已经了解了结束#牛客AI配图神器##Tplink求职进展汇总#
查看10道真题和解析 Tplink求职进展汇总
点赞 评论 收藏
分享
评论
3
22
分享

创作者周榜

更多
牛客网
牛客企业服务