足下科技面经 二面 一塌糊涂 挂
总而言之,一塌糊涂。问啥啥不会,相当尴尬。
一面基本都是问算法问题和非技术问题,给过了。
由于一面把会的都问过了,于是二面就没得问了。
面试官:你的简历好简洁啊.
面试官:看你简历上写的是单机型数据库,你了解分布式数据库嘛?
我:不了解。
面试官:看你写了个缓存池管理器,他主要是干嘛的?有没有考虑过上一些内存池?
我:根据局部性原理,为了加快常用页面的访问,不了解内存池。
然后面试官临时接了个紧急电话。
面试官: 这个项目和算法一面的时候应该问过了,我问点别的技术栈吧。你了解操作系统或者计算机网络编程嘛?
我:不了解。
陷入30s沉默
面试官: emm。好吧。嗯。那问点基础的叭。那我们问点关于C++的内存管理吧
面试官: 什么情况下必须用堆来存储变量?
不会。
陷入30s沉默.
事后查了一下:
1.动态内存分配:当无法确认变量所需的内存大小时,可以用堆来进行动态内存分配。
2.对象生命周期超过作用域:如果希望某个函数或代码块结束后,仍然访问其中的某个变量,需要用static将其存储在堆上.
3.大型数据结构:当需要存储大型数据结构,如大型数组,树,或者复杂的对象,堆可以提供足够的内存空间来存储。
4.动态数据结构:某些数据结构需要在运行的时候根据需求进行动态调整,如堆,优先队列,树等,这些数据结构的大小和结构可能在程序的执行过程中发生改变,所以需要用堆来存储.
我说我可以给她介绍一下多态。
介绍...
面试官:为什么父类的析构函数需要定义成虚函数嘛。
我:当父类的指针指向派生类对象时,只能通过虚析构来释放整个空间.
面试官:我们还是可以聊一下操作系统吧
面试官:linux操作系统内核大概包含哪些东西.
我:不懂。
面试官:你对多线程熟吗?要不挑战写一个多线程问题
我:不懂。
面试官尬笑。陷入沉默30s
面试官:那我们写一个合并递增链表吧。
然后因为没刷过leedcode链表,写了20分钟。
然后结束。
顺利挂掉。
复盘:
1.一定要沉淀好自己,不要着急面试,会浪费掉宝贵的面试机会。
2.一定要把C++语法,操作系统,计算机网络的八股系统的学一遍,背一遍。不然就会发生一面过了,二面没得问。
3.leedcode链表题,二叉树啥的指针题,一定要去刷。不是说难,就是要熟练度。
一面基本都是问算法问题和非技术问题,给过了。
由于一面把会的都问过了,于是二面就没得问了。
面试官:你的简历好简洁啊.
面试官:看你简历上写的是单机型数据库,你了解分布式数据库嘛?
我:不了解。
面试官:看你写了个缓存池管理器,他主要是干嘛的?有没有考虑过上一些内存池?
我:根据局部性原理,为了加快常用页面的访问,不了解内存池。
然后面试官临时接了个紧急电话。
面试官: 这个项目和算法一面的时候应该问过了,我问点别的技术栈吧。你了解操作系统或者计算机网络编程嘛?
我:不了解。
陷入30s沉默
面试官: emm。好吧。嗯。那问点基础的叭。那我们问点关于C++的内存管理吧
面试官: 什么情况下必须用堆来存储变量?
不会。
陷入30s沉默.
事后查了一下:
1.动态内存分配:当无法确认变量所需的内存大小时,可以用堆来进行动态内存分配。
2.对象生命周期超过作用域:如果希望某个函数或代码块结束后,仍然访问其中的某个变量,需要用static将其存储在堆上.
3.大型数据结构:当需要存储大型数据结构,如大型数组,树,或者复杂的对象,堆可以提供足够的内存空间来存储。
4.动态数据结构:某些数据结构需要在运行的时候根据需求进行动态调整,如堆,优先队列,树等,这些数据结构的大小和结构可能在程序的执行过程中发生改变,所以需要用堆来存储.
我说我可以给她介绍一下多态。
介绍...
面试官:为什么父类的析构函数需要定义成虚函数嘛。
我:当父类的指针指向派生类对象时,只能通过虚析构来释放整个空间.
面试官:我们还是可以聊一下操作系统吧
面试官:linux操作系统内核大概包含哪些东西.
我:不懂。
面试官:你对多线程熟吗?要不挑战写一个多线程问题
我:不懂。
面试官尬笑。陷入沉默30s
面试官:那我们写一个合并递增链表吧。
然后因为没刷过leedcode链表,写了20分钟。
然后结束。
顺利挂掉。
复盘:
1.一定要沉淀好自己,不要着急面试,会浪费掉宝贵的面试机会。
2.一定要把C++语法,操作系统,计算机网络的八股系统的学一遍,背一遍。不然就会发生一面过了,二面没得问。
3.leedcode链表题,二叉树啥的指针题,一定要去刷。不是说难,就是要熟练度。
全部评论
佬,您项目做的什么呀可以大概透露一下吗
佬是投的什么岗位?
佬,方便问问笔试是手撕代码吗,还是底层,八股一类的
相关推荐