百度一面二面,58一面
百度:
一面:
介绍一下算法的时间复杂度与空间复杂度。
手写快排。
给你一个数字n,返回一个数组,数组为0-n这n个数每个数bit为1的位数(答案为找规律),时间复杂度要去为o(n),n前面不能有系数。
说一下快排和堆排序的时间复杂度一样,为什么使用快排的时候多一些。
说一下c++的特性。
编译器对于虚函数是怎么处理的。
new,delete,malloc,free的区别
c++的内存分配方式。
其余应该还有一些问题,记不清了,考的都很基础,一面很轻松.
二面:
问项目。
说一下编译器对虚函数的处理,还是这个问题。(没答上来,只记得有一个虚函数表)
进程与线程的区别
线程间的通信方式,进程间的通信方式。
假设1-10000这一万个数中缺了一个怎么把他找出来,缺俩个,缺多个。如果范围为1-1e呢?
假设给你一个数n,问你这个数是不是2^k次,你的算法时间复杂度是多少,如果有一亿个数,如果数的范围在2^64范围内呢。
二面还有几个问题记不清了,应该也是考算法的,楼主应该是挂在了代码的优化上,写的太慢了。
58一面
自己实现一个string 类,要求构造,析构,拷贝构造函数,operator= ,operator [] ,c_str();
如何删除map<int,int> ans中value值等于5的键值对
反转一个链表,时间复杂度o(n),额外空间复杂度o(1)
tcp与udp的区别,http。
会使用socket编程吗(不会,网络就跳过了)
在mysql中 有一张表 表中有A,B,C三列,A,B为联合主键,当使用where A 时,会检索索引吗,where B呢?
问了一下项目。
实现一个智能指针。
大概面了40分钟,应该还有几个问题楼主忘了,反正直接就让回去等通知了(就是挂了) ,感觉自己答得还不错,除了socket编程那里,其余的都答上来了,代码可能是写的有点慢,也是挺打击人的,唉,也是自己学习的还不够吧。
22号之前陆陆续续做了4、5个笔试,此前一个面试都没收到,22号晚上收到百度的面试邀请,第二天就坐火车去了北京,24号面完,二面挂了,虽然很遗憾,但是还是感觉挺坦然的,感觉自己尽力了。
当天下午就收到了58的面试邀请。
今天早上北京大雨,9点到了58,到12点半的时候都没面上,约的十点面试的就剩我一个,然后还被安排在下午了,也没想到下午第一个就被挂了。。。出门在外找工作都不容易,能力是一方面,只希望面试方能多问一些,也给考生一些信心,下午面完真的感觉挺打击人的,感觉都没怎么问,该回答的都回答了还是被挂了。
昏昏沉沉的坐地铁到了火车站,进站之后又收到了好未来的面试通知电话、当时心情真的很复杂,也算是柳暗花明又一村了吧。
总之,回去之后还是要好好复习,实力才是硬道理。
#百度##58集团#