July2013年9月第1次面试算法讲座
主讲人:July 曹鹏博士
前几天在微博上看到July要举行面试和算法讲座,就顺便一顶,后来仔细想了想,自己最近学习科研太没有动力了,需要激励一下,就报名参加了,给July捐了10元,钱不多,但是个意思,人家好心组织,又定场地又送书,也不好意思白去。中午到北理工的7号楼,已经有好几个人在报告厅外面等着了,1点左右开门进去,July还没到,进去找个前排位置坐下,工作人员在布置会场。本来以为会设个门禁,结果是想进就进,只是坐好后签了个到。
2点正式开始,座无虚席,还有站着听的,July和曹鹏博士两个人讲,July刚开始有点小紧张,不过马上进入状态。寒暄之后进入正题,因为主要是针对毕业生的面试问题,所以上来就问了我们几个基础性的问题:
- 1、TCP建立连接的三次握手?
- 2、死锁的条件是什么?
- 3、线程与进程的区别是什么?
- 4、指针与引用的区别?
- 5、C++内存分配:堆、栈、自由存储区、全局/静态存储区,常量存储区
- 6、字节sizeof/指针/排序/虚拟函数等等
找了几个人回答,回答的都有赠书。之后讲面试前的准备工作,我总结了一下,基本上是看July的博客和《编程之美》《剑指offer》《程序员编程艺术》这几本书。然后July给十分钟时间让手写算法——二分查找,写完交上去评优送书。July给出的答案中有几点很有意思:
- 计算mid = (left + right) / 2 的时候把除以2用右移一位代替,这样更高效也可防止溢出(不是很懂)
- if判断的时候先判断是否大于和小于,最后判断等于,因为数组中元素和目标值不相等的情况居多
可以看出来July很是心细,能注意到很多细节。之后讲了几个算法题,气氛还是比较轻松的,完全没有上课那种严肃的感觉,很不错,讲的内容在July最近的博客中也都有,像完美洗牌算法、智能搜索提示、字符串转换整数等。
然后是曹鹏博士讲,曹鹏博士的几个观点感觉还是很有帮助的:
- 1、面试时最好先快速给出一个不很完美的解决方案,然后在与面试官交流的过程中提出改进。
- 2、算法的基础是排序和查找。
- 3、不要过分追求时间复杂度,实际中一个1000000000 * n的算法可能比n^2的还差。
然后讲了三个字符串处理的题目:循环右移字符串,最长回文子串,前中后出现三次的最长子串。曹鹏博士讲的比较官方,语速很快,能看出来博士期间经常给人讲解,但这样很容易把人讲睡,我听着听着就睡着了,讲完也醒了。囧!!!
总之感觉这次活动很有意思,有收获,期待下次。
附当年July的报名通知:
2013年9月第1次面试&算法讲座报名通知,时间:本周日下午2-5点,地点:北理工七号楼报告厅,主讲人:July&caopengcs,报名方式:①发私信“姓名+身份职位+状态+愿交费额(交或不交及交多少自定)”给我,②转账至此支付宝账号:zhoulei0907@yahoo.cn。转发本微博即有机会得书一本。
July当年也是个有情怀的人,支持!
以及我拍的一张现场图:
上一篇 跟着老爸练字
下一篇 路遥《平凡的世界》读后感
页面信息
location:
protocol
: host
: hostname
: origin
: pathname
: href
: document:
referrer
: navigator:
platform
: userAgent
: