百度测试一面
来源:互联网 发布:java中offset 编辑:程序博客网 时间:2024/05/16 10:23
1.Socket通讯。写一个简单的多线程socket通讯。
2.c++中虚函数底层的实现。
3.输出一个字符串的全排序和组合。
4.linux基本命令--如何用一条命令查找到一个字符串中出现次数最多的n个字符(这个命令我一直没找到)。
5.一个网络爬虫,每天可以抓取20亿条url。其中有些url重复出现。
(1)如何去重复url。
(2)数据库每天只能入库500万条url。如何在20亿条url中找出重要的500万条url?
6.“brokenpipe”是什么异常?
1,2,4,6都是可以再网上找到。这里不再叙述了
3.字符组合
/*程序员面试题精选100题(59)-字符串的组合[算法] 题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子, 如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。*/vector<char> vec;typedef vector<char>::iterator Iter;void PrintCom(char *str,int low,int high,int m){if(high-low+1<m)return;if(m==0){for(Iter iter=vec.begin();iter!=vec.end();iter++){cout<<*iter;}cout<<endl;return;}vec.push_back(str[low]);PrintCom(str,low+1,high,m-1);vec.pop_back();PrintCom(str,low+1,high,m);}void PrintCom(char *str){int len=strlen(str);int low=0;int high=len-1;for(int i=1;i<=len;i++){PrintCom(str,low,high,i);}}void PrintComTest(){char str[]="abcdef";PrintCom(str);}
字符全排列
/*3、给出一个函数来输出一个字符串的所有排列。*/void GetAllArrange(char *str,int low,int high){if(low==high){cout<<str<<endl;return;}for(int i=low;i<=high;i++){swap(str[low],str[i]);GetAllArrange(str,low+1,high);swap(str[low],str[i]);}}void GetAllArrangeTest(){char str[]="abcde";GetAllArrange(str,0,strlen(str)-1);}
第三题主要是考察了递归和栈的使用。
5.这是一道开放性试题。
我这里写出自己的解答。希望大家有好的想法可以提出来
1.分治。这个大的数据量分块处理。逐段的去重复。最后再俩段俩段的合并。合并后在去重复。
2.找到最重要的500万条。应该是出现次数最多的500万条。这个我觉得要用堆。类似于top n问题,取前n。
- 百度测试一面
- 百度软件测试:一面
- 百度贴吧测试实习一面
- 百度质量部 - 开发测试 - 一面
- 2016百度测试开发工程师一面
- 百度测试开发--一面(技术)
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度一面
- 百度质量部开发测试实习生一面总结
- 百度2015实习生招聘(开发测试工程师)一面总结
- 【百度】生态质量部 测试开发实习生 电话一面
- Qt:禁止qDebug的输出
- myeclipse 8.5 优化
- 开发工具-Eclipse(25个最佳闪亮的Eclipse开源工具)
- 多字节字符串与宽字符串的转换
- 文件系统列表
- 百度测试一面
- 在web.config里使用configSource分隔各类配置
- Ubuntu热键
- live555 H264封包原理
- 电脑按键大全
- ThinkPHP模板的应用
- Windows+apache+php+mysql环境搭建
- 监控mysql执行的语句
- RFC791中文