做一下简单记录。会持续更新的。我会把一些有参考价值的问题拿出了供大家参考。
美团k8s组
3月25 一面
一面主要聊了聊项目,go语言基础,k8s基础,算法题,数学题
和面试官仔细聊了聊项目。
基础知识:
- go语言协程
- 容器原理
- gvisor怎么实现的(不会)
- k8s pod创建的全流程
- pod内部网络
算法题:
- 1-n中所有的数里面1出现的次数
数学:
- nim游戏。100个石子,每次只能取1-8个。问第一次取多少个能保证自己必赢
- 答案的话,9*n是必输局面。所以99就是最大的一个必输局面,取一个就好
grab【offer】
学长推荐了这家公司,在东南亚做打车外卖业务的。据说有拿期权,财富自由的机会,哈哈。
面试只有一轮,一共一个小时,不过考察的方面还是很全面的。自我介绍、项目、基础知识、算法题
基础知识:
- 线程进程、tcp和dup、指针和引用、c++和go
- 浏览器输入淘宝到显示结果的全过程。这里我聊到了cdn,前后端分离等等
- 消息队列是做什么的,应用场景有哪些
- elastic search大概原理是什么。倒排索引的大概原理
- etcd和redis的区别
- 如何实现一个分布式锁
- CAP原则
- 如何加速数据库查询
- 数据库有哪些引擎,各有什么特色
- B+索引
- IO多路复用
- rpc 和 http 的区别
算法题:
1. 特别简单一道水题,没啥参考价值
2. 题目是英文的,看了半天没理解,让面试官给我解释了一下(面试的时候不懂一定要谦虚请教啊)。就是有一个数组,由两个数和其所有因数组成,求这两个数是什么。比如1 1 2 4 5 8 10 20。思路就是排序,最大的数肯定是其中之一,把最大的数分解因数,然后把这些因数全都筛掉。之后剩下的数里最大的就是另一个。复杂度是O(N^1.5)。之后面试官提示有更好的算法,我也没想出来。不知道大家有没有更好的方法。
公司还是不错的,就是实习工资太低,才250一天。同样作为创业小公司,人家猿题库都快1000块钱一天了。
微软
3月9日内推
3月17日约了面试时间
3月25日 一面:
- 5分钟寒暄
- 10分钟算法题:https://leetcode-cn.com/problems/bulb-switcher-iii/ 不久前刚打完的周赛
- 10分钟面试官介绍组内情况(面试官觉得时间太短不合适就给我仔细讲了讲)
3月25日 二面:
- 5分钟寒暄。发现是同所学姐,随便交流了一下
- 算法题1 : LeetCode 22. Generate Parentheses
- 算法题2 : 给一个括号序列,求出最长的合法子括号序列长度
阿里云
3月初把简历给学长。学长和我聊了40分钟吧。就是聊了聊项目和烂大街的基础知识。
3月23号做完笔试。一题是组合数,答案是求和形式,我推了一会没推出来,去百度了一下常见组合数公式,然后快速幂过了。第二题bfs,过了90的样例。题目中有一个限制,我刚开始忽略了,之后我也懒得改了,就直接交了。
3月24号,简历评估阶段。和组里老大聊了20分钟,就是简单聊了聊项目。
3月25日 一面。主要聊了之前的实习经历。稍微问了点c++(不超过微信范围)
编程题:
- 写字典树
- 编辑距离
微信
我选了腾讯云和微信两个部门,被微信捞起来了
一面:
一面聊了很久,100分钟吧。问的很全面,项目,基础知识,c++,算法题,偏工程的题。
基础知识:
主要问c++比较深入。烂大街的问题我就不写了
- 多态怎么实现的
- 虚表虚机制是怎么回事
- 构造函数可以是虚函数吗?为什么?
- 析构函数可以是虚函数吗?为什么?
- const是函数签名吗?是。有什么作用?区分只读操作和赋值操作
- C++11了解过吗?
- variatic template讲一讲
- 右值引用讲一讲
- lambda讲一讲
- 智能指针干嘛的,大概怎么实现的?
- override final关键字有什么用
- decltype有什么使用场景吗
- delete 和 delete[] 有什么区别
- delete 删除数组为什么会造成内存泄露?只调用一次析构函数
- delete[]怎么知道要调用多少次析构函数?讲了object的内存格式
算法题:
背景不说了。就是一个单调栈,维护一个数字左右两侧单调递增的序列就行
工程题:
写一个string类。重点是复制构造函数要深拷贝,=操作符要看传过来的对象是不是自己。
3月17号面完,网站上看是过了,不过还没联系我,心里有点慌。
vmware【offer】
vmware主要聊了聊k8s(和字节跳动问的差不多)。三面加起来不到一个小时。没问算法题。就给offer了。不过后面组里员工给我说让我去做内部工具,我也不是很感兴趣,就拒了。
滴滴【offer】
滴滴很神奇。我找同学内推基础架构部门。被网络组捞起来了,和我只聊了25分钟,主要聊了聊项目,没问什么具体问题,很轻松愉快。之后就给我发offer了。这个组是sdn组,我也不懂,就只好拒了。
百度基础架构部门【挂】
百度也是过年前去面的。百度面试体验就很糟糕了。我和一面年轻面试官聊了非常好。然而二面leader就很不爽,首先他面了一会就出去取快递了,我等了差不多20分钟。面试的时候也非常趾高气扬的。各种吹牛,比如说我在百度都11年了、业界也就百度等少数几家公司有这么多的服务器、我们的基础架构比头条他们强太多了、你在实验室做的东西在生产环境根本用不了、你怎么连最基本库函数都不知道啊。我真是服了。
后面我也不想面了,他问我怎么设计一个计时器,我就直接说不知道,他说同学你稍微考虑考虑啊,我想了想就说用小顶堆就行。他问我实习到多久啊,我就说实习到6月吧,他说那你暑假有事吗?我直接说暑假看情况吧, 可能去其他公司。
主要聊项目,算法题和基础知识。
项目:也是问了很多k8s相关的。和字节跳动问的差不多
算法题:翻转链表,翻转二叉树,写strncpy函数(这个不会写)
基础知识:就是进程线程这种烂大街的。不过二面leader会一直深入的问,会问到我不知道为止
反正这次面试很不愉快。之后我也再没投过百度。
字节跳动基础架构部门【offer】
过年前找师兄内推。两天后约了面试。约在周天,从下午3点面到了6点左右。主要问k8s、算法题和基础知识。
k8s:聊了聊实验室的项目,然后问了一些k8s的基础。以及原理性的东西。
- pod提交到运行全流程。
- 如果要挂载pvc的话会有什么区别。
- deployment和statefulset有什么区别
- 问我们怎么处理网络的,k8s网络大概有几种类型,大概原理是什么
- docker大概怎么实现的
- etcd和redis有什么区别
- k8s和yarn有什么区别
- 描述yarn drf算法大概原理
算法题:
- 快排
- 第k大数
- wiggle sort
- 还有一道题描述起来比较复杂,是关于栈的一道题。也不是很难
- 蛇形矩阵遍历
- k路归并
- 一道二分题目,不太好描述。大概思路就是在值域范围内具有单调性,然后二分中点,判断重点符不符合条件。典型二分+判断。不过当时一下子没反应过来,面试官提示了一下才反应过来
- 单调栈:一个数左边比它大的第一个数
算法题只写了4题,其他题目主要在聊思路。
基础知识:
基础知识我回答的就很糟糕了,因为完全没背过。也不是很难,就是进程线程区别,c++程序内存空间有哪些等等。都是烂大街的。没啥意思。
总结:
虽然基础知识一团糟,但是其他方面还不错,面试官人也很好。体验还是很棒的。
全部评论
(10) 回帖