【校园招聘】2013百度软件研发笔试题
百度笔试题,分为三大部分,第一大部分为问答题,第二部分为程序与算法设计题,第三部分为系统设计题。如果大家有什么好的想法,直接留言啊。。。。。
第一部分:问答题
1.哈希算法有哪些?它们的用途是什么?
2.OSI网络模型一共分为七层,它们有哪些?HTTP协议是处在哪一层。
3.C程序的执行需要什么条件 并说明执行过程?
第二部分:程序设计题
1.有许多苹果,将它们用袋子包装,假如三个苹果包装一袋剩余2个苹果,如果5个苹果包装一袋剩余3个苹果,如果7个苹果包装一袋剩余2个苹果,求满足上述条件的N个不同的苹果数目。
2.用递归的方式实现一个字符串中连续出现相同字符的最大值,如aaabbcc,连续出现a的最大值为3,abbc,连续出现字符最大的值为2。
3.现在有大于10亿个数据的数组,要进行按从小到大进行排序。现在将这10亿个数据进行分段,每段的数据不超过20个,并且每段的数据个数不等并且将其打乱。怎么样对这10亿个数据进行排序,要求时间效率是最高的,并且分析它的时间复杂度。
第三部分 系统设计题
数据库的设计
- 3楼abcd516851685天前 22:48
- [code=cpp]n#include<iostream>nusing namespace std;nvoid number(const int N,int n=0)n{ntif(n%3==2&&n%5==3&&n%7==2)nt{nttfor(int i=n;i<=N;i+=3*5*7)nttcout<<i<<'\t';nt}ntelse number(N,++n);n}nvoid main()n{ntconst int n=1000;ntnumber(n);n} n[/code]
- 2楼f5628674485天前 21:37
- 今天参加了
- 1楼abcd516851685天前 21:36
- [code=cpp]n#include<iostream>nusing namespace std;nvoid max(char *p)n{ntstatic int m=1;static int n=1;ntif(*p=='\0') cout<<"no char"<<endl;ntelse if(*(p+1)=='\0') cout<<(m>n?m:n)<<endl;ntelsent{nttif(*p==*(p+1))t{m++;max(++p);}nttelsentt{ntttif(n<m){n=m;}ntttm=1;max(++p);ntt}nt}n}nvoid main()n{ntchar *p="aaabbcc";ntmax(p);n} nn[/code]