锁定老帖子 主题:腾讯php程序员面试题目,供大家学习一下
精华帖 (0) :: 良好帖 (3) :: 新手帖 (0) :: 隐藏帖 (6)
|
|
---|---|
作者 | 正文 |
发表时间:2010-06-08
最后修改:2010-06-08
zhangqingxin 写道 wolfplanet 写道 4M还叫巨吗。。。
哥们,算算4M能存多少英文单词吧,而且还是文本文件,没有任何格式,在里面扫描出某个单词出现过几次,有空自己搞个4M的文件试试吧~~ 嗯http://abitno.me/from-1m26-115s-to-0m0-055s |
|
返回顶楼 | |
发表时间:2010-06-08
题题都要算法效率很好,代码简洁,
|
|
返回顶楼 | |
发表时间:2010-06-08
wolfplanet 写道 4M还叫巨吗。。。
你没见过4M的txt文件吧 |
|
返回顶楼 | |
发表时间:2010-06-08
最后一题可以用shell来弄不?
|
|
返回顶楼 | |
发表时间:2010-06-08
最近很有去腾讯的冲动,看了这篇文章,冲动,没了!
|
|
返回顶楼 | |
发表时间:2010-06-08
为什么想去腾讯呢 ? 优势在哪呀
|
|
返回顶楼 | |
发表时间:2010-06-08
aitracy 写道 wolfplanet 写道 4M还叫巨吗。。。
你没见过4M的txt文件吧 你们这些不看东西就说话的人,4G的都处理过,4M能叫巨吗? |
|
返回顶楼 | |
发表时间:2010-06-08
把里面的php替换成其它语言也可以的,考到并不是php。
|
|
返回顶楼 | |
发表时间:2010-06-08
最后一个题
#!/usr/bin/php <?php $handle = fopen('bbe.txt','r'); $word = $argv[1]; $x = array(); $y = array(); $i = 1; while(!feof($handle)){ $data = fgets($handle); if(preg_match_all('/(?<![a-z])'.$word.'(?![a-z])/i',$data,$matches)){ if(count($matches[0])==1){ $x[] = $i; $y[] = stripos($data,$word); }else{ $countInLine = count($matches[0]); $start = 0; for($j=0;$j<$countInLine;$j++){ $x[] = $i; $start = $y[] = stripos($data,$word,$start); $start++; } } } $i++; } fclose($handle); $xy = array(); for($k = 0;$k < count($x);$k++){ $xy[] = $x[$k].','.$y[$k]; } echo '<pre>'; print_r($xy); 输出我没有按照要求输出,我也不知道这个效率高不高,反正能查出来单词的坐标.为了做这个题,我特意下了本txt的<<圣经>>,一看,靠,真是4M . 其他的我都稍微baidu了下答案. 地址是: http://contra.iteye.com/blog/683957 欢迎大家也补充下,互相学习. |
|
返回顶楼 | |
发表时间:2010-06-08
最后一道考的是索引算法。
应该是先生从索引文件,然后查询索引来得到结果。而不是每次都去遍历数据文件。 |
|
返回顶楼 | |