posts - 14,  comments - 4,  trackbacks - 0
前一天接到邀请面试的电话,邀请我的原因就是因为我参加过ACM程序设计竞赛。  
早上10点坐车到杭州,到那边1:30了,午饭没吃去面试了。公司:杭州天卓网络有限公司      面试职位:JAVA工程师。面试官是一个很年轻的人,问了我一些数据结构的东西,二叉树和二叉平衡树有什么关系?我答:不知道。jsp和severlet什么联系?答:不知道。mysql和JAVA用的是两块不同的内存那么JAVA程序是怎么得到数据库的数据的?答:JAVA不是有个链接库连接数据库的嘛。问:就是这个链接库是怎么实现的?答:不清楚。。又问了:hashMap什么什么的。答:没接触过。当然也有一些能说上几句的。
做过网络编程吗?
做过一个聊天系统。
是用socket作的?
嗯。客户端和服务端。

做过多线程的程序吗?
用C语言写过多线程搜索文件。

你是怎么管理C语言程序的内存的?
自己分配的内存不用了就释放,数组之类的就无所谓。。

还有一个最丢脸的问题,我无地自容啊。。
假如有一个定时器,在固定的时间会触发一件事,定时任务非常多,假如还有一些新的定时任务要加入,你怎么解决?
我当时在他的很长的解释下有点迷糊了,反反复复说了好多话,反正我最好的方法就是遍历一次找到插入点,或者能个数组标记时间,直接将新任务插入合适位置。很明显这两种方法都很戳。。遍历耗时,标记耗内存。
他还补充了用什么样的数据结构解决这个问题,再我实在想不出的时候他说了用堆。说实话堆我听说的很多,但一直不知道具体是什么概念。
刚刚走出公司我就想啊,二分查找不就可以很快速的找到新任务的插入点了嘛。。。我晕死了,亏我还自称是搞过ACM的,对算法是最熟悉的。这张老脸往哪搁啊。。
posted on 2012-01-07 17:29 mr_chen 阅读(170) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2011年4月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿

随笔档案(14)

文章分类(8)

文章档案(11)

搜索

  •  

最新评论

阅读排行榜

评论排行榜