变态面试题第二弹
时间:2010-06-24
来源:互联网
那道socket的面试题我说我不会,那公司又给我了另一道更加变态的题目:
日志分析
1)从文件中用户提取字符串(下面示例中包含在[]中的字符)
2)利用hash算法把所有的字符串散列 到一个hash表中,统计相同字符串出现的次数
3)编写一个排序算法(例如快速排序),把这些字符串按照出现的频率排序.
4) 把输出结果保存到一个文件,文件格式为:
字符串\出现次数\r\n
输 入文件示例:
09/30 14:40:49 PB .1306 TRACE: [西部地区] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=33817 list=200(10) 143ms cache=0
09/30 14:40:50 PB .1302 TRACE: [河南电脑福利彩票] cl=0 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=39 list=39(10) 245ms cache=0
09/30 14:40:50 PB .1304 TRACE: [富丽雅] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=46 list=46(10) 151ms cache=0
09/30 14:40:50 PB .1297 TRACE: [国内生产总值] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=21674 list=200(10) 7ms cache=1
09/30 14:40:50 PB .1308 TRACE: [超星图书浏览器] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=54 list=54(10) 145ms cache=0
09/30 14:40:50 PB .1294 TRACE: [mp3] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=96110 list=200(10) 7ms cache=1
要求:
1)使用C++
2)说明设计要点
3) 实现的性能瓶颈在哪里,如何优化
4)给出日志文件5M、10M、50M、500M和1G时的测试结果并作简要分析
我了割草,又是算法,又是动不动就500M,你们公司是写操作系统的吗?还是C++,最后还是一句,求各位大神解答,谢
日志分析
1)从文件中用户提取字符串(下面示例中包含在[]中的字符)
2)利用hash算法把所有的字符串散列 到一个hash表中,统计相同字符串出现的次数
3)编写一个排序算法(例如快速排序),把这些字符串按照出现的频率排序.
4) 把输出结果保存到一个文件,文件格式为:
字符串\出现次数\r\n
输 入文件示例:
09/30 14:40:49 PB .1306 TRACE: [西部地区] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=33817 list=200(10) 143ms cache=0
09/30 14:40:50 PB .1302 TRACE: [河南电脑福利彩票] cl=0 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=39 list=39(10) 245ms cache=0
09/30 14:40:50 PB .1304 TRACE: [富丽雅] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=46 list=46(10) 151ms cache=0
09/30 14:40:50 PB .1297 TRACE: [国内生产总值] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=21674 list=200(10) 7ms cache=1
09/30 14:40:50 PB .1308 TRACE: [超星图书浏览器] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=54 list=54(10) 145ms cache=0
09/30 14:40:50 PB .1294 TRACE: [mp3] cl=2 lm=0 ct=0 si=gi tn=sohu pn=0 | disp=96110 list=200(10) 7ms cache=1
要求:
1)使用C++
2)说明设计要点
3) 实现的性能瓶颈在哪里,如何优化
4)给出日志文件5M、10M、50M、500M和1G时的测试结果并作简要分析
我了割草,又是算法,又是动不动就500M,你们公司是写操作系统的吗?还是C++,最后还是一句,求各位大神解答,谢
作者: jasfidfjds 发布时间: 2010-06-24
1GB的日志文件,很小啊
作者: cugb_cat 发布时间: 2010-06-24
这个没有什么难度,大概第二步费时些
作者: hellioncu 发布时间: 2010-06-24
c++的话,实现hash表,直接搞个map不就行了么?
作者: tanos 发布时间: 2010-06-25
直接perl不行么……
你问问他能不能unorder_map,如果不行就只好自己写times33了……
你问问他能不能unorder_map,如果不行就只好自己写times33了……
作者: starwing83 发布时间: 2010-06-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28