您当前所在位置:
88好学网范文常识招聘应聘笔试google2017校园招聘笔试题» 正文

google2017校园招聘笔试题

[05-18 22:30:27]   来源:http://www.88haoxue.com  笔试   阅读:680

概要:A选项的优化只能针对代码本身,纯系统调用什么的是不会性能提升的(当然也不会下降),B选项我觉得是在并行优化方面,好的编译器可以从循环中发掘并行性,展开之后就不行了,C选项有点说不清。消除数据依赖主要有两个方法,一种是SSA,即静态单赋值,这是通过对变量进行重命名实现的,严格的说应该叫“寄存器重命名”而不是“寄存器分配”;另外一种是调换指令顺序,这种只要不是真相关(写后读,RAW)的话都可以消除掉,也不属于寄存器分配。所以感觉不应该选这个。1.10 B求最大公约数用的是辗转相除法(欧几里得算法),所以是O(logn)。2.1这题比较基本,而且很多企业的笔试都爱考类似的。主要就是对尝试对数a进行质因数分解,最容易写的就是从2开始一直除到sqrt(a),性能提升一点就从2,3然后除奇数一直到sqrt(a)。当然还可以优化一下,建立一个动态质数链表,将之前取到的所有质数加入表进行加速。2.2这题我觉得除了重载一下swap函数然后用传统排序法之外也想不出什么高效的做法了。而且要代码实现,时间紧迫也不由得你多想。2.3这题个人觉得

google2017校园招聘笔试题,标签:笔试大全,http://www.88haoxue.com

  A选项的优化只能针对代码本身,纯系统调用什么的是不会性能提升的(当然也不会下降),

  B选项我觉得是在并行优化方面,好的编译器可以从循环中发掘并行性,展开之后就不行了,

  C选项有点说不清。消除数据依赖主要有两个方法,一种是SSA,即静态单赋值,这是通过对变量进行重命名实现的,严格的说应该叫“寄存器重命名”而不是“寄存器分配”;另外一种是调换指令顺序,这种只要不是真相关(写后读,RAW)的话都可以消除掉,也不属于寄存器分配。所以感觉不应该选这个。

  1.10 B

  求最大公约数用的是辗转相除法(欧几里得算法),所以是O(logn)。

  2.1

  这题比较基本,而且很多企业的笔试都爱考类似的。主要就是对尝试对数a进行质因数分解,最容易写的就是从2开始一直除到sqrt(a),性能提升一点就从2,3然后除奇数一直到sqrt(a)。当然还可以优化一下,建立一个动态质数链表,将之前取到的所有质数加入表进行加速。

  2.2

  这题我觉得除了重载一下swap函数然后用传统排序法之外也想不出什么高效的做法了。而且要代码实现,时间紧迫也不由得你多想。

  2.3

  这题个人觉得是这场笔试唯一拉分的题了,基于动态规划算法。事实上就是写出LD算法的伪代码。

【小编推荐笔试题目】

Google笔试题目推荐

Google计算机类笔试题

微软亚洲技术中心笔试题

微软笔试题精解

腾讯笔试题目,绝对有用

上一页  [1] [2] 


Tag:笔试笔试大全招聘应聘 - 笔试
》《google2017校园招聘笔试题》相关文章