论坛首页 招聘求职论坛

百度面试归来,经验值又+1了

浏览 45420 次
精华帖 (2) :: 良好帖 (11) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-12-14   最后修改:2011-12-14
leonayx123 写道
niveko 写道
5.       为了实现一个折线图,需要将数据存入一种数据结构,折线图横坐标是时间,纵坐标是值,经常的查询是按时间段进行查询,如select value from t where begin>’20110101’ and end<’20111212’ ,问,使用java中的那种数据结构比较好。

这个应该用TreeMap,查询的效率会比较高. subMap(K fromKey, K toKey)

请教,
为什么要用treemap呢? 这个题目里的什么点和treemap的排序树能对应上?
就是因为排序过么?


这个题目的关键在于查询上面,因为对于范围的查询,你要是用其它的结构就会面临查范围的时候一个一个的去比较,然后把满足范围的添加到一个集合里面,遍历完了再把结果集返回,这样的效率是比较低的。而TreeMap是基于红黑树的实现,它内部会维持一个排序的关系,你要想找比某个值大或者小的只需用查找它左边或者右边的值就行。而范围的查询效率会更高,只需用指定开始和结束,它就可以返回一个AscendingSubMap集合给你,这个集合就是你需要查询的结果。具体的可以看看TreeMap的实现会更清楚些。
0 请登录后投票
   发表时间:2011-12-14  
这是应届生的么? 我表示我果断不会
0 请登录后投票
   发表时间:2011-12-14  
看来楼主的面试题,我汗颜了,基本上都不会...
0 请登录后投票
   发表时间:2011-12-14  
都有点眼熟儿!
0 请登录后投票
   发表时间:2011-12-15  
个人认为面试要考察的不是问出问题,你就能答出,那只是说明你有这个水平或技能。
有时候要考查你的学习能力以及分析问题的能力,这个往往是你不知道这个问题咋回答的时候才能考察出来的,一步一步分析的过程很重要。
0 请登录后投票
   发表时间:2011-12-16   最后修改:2011-12-16
niveko 写道
这个题目的关键在于查询上面,因为对于范围的查询,你要是用其它的结构就会面临查范围的时候一个一个的去比较,然后把满足范围的添加到一个集合里面,遍历完了再把结果集返回,这样的效率是比较低的。而TreeMap是基于红黑树的实现,它内部会维持一个排序的关系,你要想找比某个值大或者小的只需用查找它左边或者右边的值就行。而范围的查询效率会更高,只需用指定开始和结束,它就可以返回一个AscendingSubMap集合给你,这个集合就是你需要查询的结果。具体的可以看看TreeMap的实现会更清楚些。

恩 非常感谢,之前瞄过一眼treemap的源码。但是从来没用过,对它提供的方法就不怎么了解。
感谢解惑
0 请登录后投票
   发表时间:2011-12-16  
6.       数据库的索引通常用什么数据结构实现?为什么用这种数据结构。

这个问题非常好。看了一篇淘宝一个姓张的人写的帖子,感觉思想在升华。
最多的感触就是,大学学得存储,寻址之类的知识不是白学了,只是做的东西还没用到而已,看看 btree设计者设计这个数据结构时对内存,磁盘访问的理解,结合之后设计的btree节点大小。瞬间膜拜~~
0 请登录后投票
   发表时间:2011-12-21  
请问楼主申请的是百度的什么职位?百度有java的么?
0 请登录后投票
   发表时间:2011-12-21  
macemers 写道
请问楼主申请的是百度的什么职位?百度有java的么?

 

 当然有了,一大把。。

0 请登录后投票
   发表时间:2012-02-02  
也想去百度试一下,可惜没作过java
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics