设为首页 加入收藏

TOP

HuLu电话面试经历(有点老,但是很有用)
2014-10-11 03:31:18 来源: 作者: 【 】 浏览:35
Tags:HuLu 电话 面试 经历 有点 但是 有用

10.7上午接到HuLu打来的电话问晚上有没有时间,要电话面试,我说可以,第一次接到电话,而且还是电面真有点儿紧张。


晚上8.00整电话准时打过来,先让自己介绍了一下花了2分钟左右,然后让我选择一个自己喜欢的项目介绍,介绍项目花了3分钟多一点儿,然后他问了一些简单问题:


l 项目的难点


l 存在的问题


l 如果再给我两个月,让我说出项目还可以做何优化


然后开始面试技术问题:


第一个问题是语言掌握情况,接下来都是算法问题


1、 问会不会C++,我说看过书,没做过项目,然后他说:“那你C很熟了”,我说还可以吧,他问如何减少内存泄漏或多次释放同一个内存带来的危险,我就按照C语言编程风格说尽量在一个函数内申请空间然后释放,malloc 和free不要跨函数,然后他问C++如何实现,我说,类里面如果有指针成员,必须自己实现拷贝构造函数、重载赋值运算符,感觉他不太满意,又问我智能指针如何实现,忘了L。


问算法问题前,他先说明如果我见过告诉他,说不要浪费时间,我感觉如果你见过四个只跟他说你见过两个最好。


2、 问我对web技术了解如何,我说不太了解J


3、 冒泡排序复杂度,快速排序复杂度【问得很浅】


4、 已知二叉树的两个节点,求最近的公共祖先


我说很早就见过,他就直接问了下一个问题


5、 1 —n,共n个数去掉一个,如何快速知道缺失的数?


我说见过,他又问,如果少两个呢?我想了一下,说可以申请空间类似于散列的方式来做,就散列他又问了几个问题:


(1)、我平时常用的散列函数


(2)、对字符串如何构造散列函数


(3)、冲突率如何,如何解决冲突


回到原题,他说这种方法可以,但是申请可额外空间,如何不申请额外空间,我想了好一会儿:说可以这样求出 a+b和a*b即可,他说这样不好,马上说”不能说不好”(J),让我想想别的方法,最后他说可以求出a+b和a^2+b^2。


6、 两个链表如何判断相交


我说见过,他说如何找出交点?我想了一会儿说,先求出链表长度,然后申请空间存储链表的地址,保证可以从后向前比较,他说不申请空间如何实现?


想了一会儿没思路,他提示如何利用你求出的链表长度呢?我马上有了思路:先定义两个指针指向链表头,让指向长的链表指针先走一定的步数,然后两个指针同步移动判断。


7、 一个包含n个元素的数组,其中一个数重复超过n/2次,如何找出这个数


我说就是求中位数,然后他说如何做,我说用快速排序的partition函数,他问复杂度是多少我说O(n),他问为什么,我简单给他说了一下复杂度的递归式就OK


8、 如何判断一个链表存在环


我说见过他又问,如果存在环,如何确定交点,想了一会儿,没思路,它提示说,将环断开,我茅塞顿开,说这就是两个相交链表判断交点位置的问题了OK.


9、 如何判断一个数是2的幂


(x + ~0)&x


暂时就想到这么些题了,其他想到再补充。总共1个小时零10分钟左右。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇一套Delphi的笔试题(2) 下一篇关于面试所需要知道的知识

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: