Google 2012校招笔试

 选择题:
1. 关于整数,下列说法正确的是:
A. 忘了
B. 32位的机器上,8位加法比32位加法更快
C. 整数加法最好不要溢出,否则会浪费内存
D. 一般来讲,整数除法比乘法更加费时间


2. 在OSI标准钟,下列协议哪个位于最底层:
A. HTTP
B. FTP
C. IP
D. TCP


3. 给一段代码,问正确的是:
大概是两个函数,其中一个里面调用了malloc但是没有释放,另一个申请了局部数组a[20M]
A. 动态申请效率会比较高
B. 声明局部数组的那个函数可能有内存泄露
C. 声明局部数组的那个函数可能会导致运行时栈溢出


4. 28.5625的4进制表示
A.121.XX
B.XXXX
C121.XX
D130.21


5. 关于垃圾回收机制,下列说法错误的是
A. 在这个机制下,程序员不必显式回收内存
B. 现在的垃圾回收机制能够处理循环引用
C. 垃圾回收机制能够让程序员更方便地写代码
D. 有垃圾回收机制的语言肯定不会导致内存泄露


6. 下列加密方法,哪个不能用于加密文本:
A. MD5
B. RSA
C. RC4
D. DES


7. 有3个a,5个b,2个c,现在对他们做全排列,其中包含至少一个"abc"串的排列数是多少?
A. 8!
B. 好大一个数
C. 840
D. 780
E. 69
注:先组合一个abc,剩下2个a,4个b,1个c,总共包括 A(8,8)/A(3,3)/A(2,2)=840;

另外还要减去重复,这种情况下实际序列中含有两个abc,包括A(6,6)/A(3,3)/A(2,2)=60;

故结果为840-60=780;

8. 给定一个无向带权连通图,求最大生成树(权重和最大的生成树)
邻接矩阵为{xxxxx}{xxxxx}{xxxxx}{xxxxx}{xxxxx}
A 11 b 12 C 13 D 14 E 15
9. 一个节点数不小于3的二叉树,至少删除几个点能够让它不连通?
A 0 B 1 C 2 D 3 E 4
10. 关于操作系统的说法,哪个是错误的?
A. XX (好像是微内核)和XX(忘记是啥了)在现在仍然是比较新的概念
B. 系统调用是用户态和内核态连接的接口
C. 操作系统为用户程序提供运行平台
D. 文件系统和XX必须实现在内核态


参考答案:D C C D D A D D B D
三道大题:
1. 一个环,N个点,任意相邻两点有一个距离。要求写一个算法,输入为点i和点j,输出是他们之间的最短路径
2. 一个字符串,去除重复的空格,并且把子段reverse
3. X<10^6,如何用任意的100、50、20、10、5、2、1来加出X,求所有方法

你可能感兴趣的:(c,加密,算法,tcp,Google,语言)