google浙大招聘笔试题 
一、单选
1、80x86中,十进制数-3用16位二进制数表示为?0010000
2、假定符号-、*、$分别代表减法、乘法和指数运算,且 
1)三个运算符优先级顺序是:-最高,*其次,$最低;
2)运算符运算时为左结合。请计算3-2*4$1*2$3的值: 
(A)4096,(B)-61,(C)64,(D)-80,(E)512
算符 
3、下列伪代码中,参数是引用传递,结果是?
calc(double p, double q, double r){q=q-1.0;r=r+p}
main(){
double a = 2.5, b = 9.0;
calc(b-a, a, a);
print(a);
}
(A)1.5 (B)2.5 (C)10.5 (D)8 (E)6.5
4、求输出结果: 
int foo(int x, int y){
if(x <=0 || y <= 0) return 1;
return 3 * foo(x - 1, y / 2);
}
printf("%d\n", foo(3, 5));
(A)81 (B)27 (C)9 (D)3 (E)1
5、下列哪个数据结构在优先队列中被最广泛使用?a
(A)堆 (B)数组 (C)双向链表 (D)图 (E)向量 
6、以下算法描述了一个在n国元素的双向链表中找到第k个元素的方法(k >= 1且k <= n): 
如果k <= n - k,从链表开始往前进k-1个元素。 
否则,从终点出发,往回走n - k个元素。 
这个算法的时间代价是?
(A)θ(nlogn) (B)θ(max{k, n - k}) (C)θ(k + (n - k))
(D)θ(max{k, k - n}) (E)θ(min{k, n - k})
7、有一个由10个顶点组成的图,每个顶点有6个度,那么这个图有几条边?30
(A)60 (B)30 (C)20 (D)80 (E)90
8、正则表达式L = x*(x|yx+)。下列哪个字符串不符号
(A)x (B)xyxyx (C)xyx (D)yxx (E)yx
9、为读取一块数据而准备磁盘驱动器的总时间包括
(A)等待时间 (B)寻道时间 (C)传输时间 (D)等待时间加寻道时间 (E)等待时间加寻道时间加传输时间
二、算法 
1、打印出一个二叉树的内容。
2、在一个字符串中找到第一个只出现一次的字符。如abaccdeff,输出b。
3、给定一个长度为N的整数数组(元素有正有负),求所有元素之和最大的一个子数组。分析算法时空复杂度。不必写代码。

附上算法题第3题的动态规划做法的参考答案:
最大子序列
问题:
给定一整数序列A1, A2,... An (可能有负数),求A1~An的一个子序列Ai~Aj,使得Ai到Aj的和最大
例如: 整数序列-2, 11, -4, 13, -5, 2, -5, -3, 12, -9的最大子序列的和为20。 对于这个问题,最简单也是最容易想到的那就是穷举所有子序列的方法。利用三重循环,依次求出所有子序列的和然后取最大的那个。当然算法复杂度会达到O(n^3)。显然这种方法不是最优的,下面给出一个算法复杂度为O(n)的线性算法实现,算法的来源于Programming Pearls一书。 在给出线性算法之前,先来看一个对穷举算法进行优化的算法,它的算法复杂度为O(n^2)。其实这个算法只是对对穷举算法稍微做了一些修改:其实子序列的和我们并不需要每次都重新计算一遍。假设Sum(i, j)是A[i] ... A[j]的和,那么Sum(i, j+1) = Sum(i, j) + A[j+1]。利用这一个递推,我们就可以得到下面这个算法:
int max_sub(int a[],int size)
{
int i,j,v,max=a[0];
for(i=0;i<size;i++)
{
v=0;
for(j=i;j<size;j++)
{
v=v+a[j];//Sum(i, j+1) = Sum(i, j) + A[j+1]
if(v>max)
max=v;

}
return max;
}那怎样才能达到线性复杂度呢?这里运用动态规划的思想。先看一下源代码实现:
int max_sub2(int a[], int size)
{
int i,max=0,temp_sum=0;
for(i=0;i<size;i++)
{
temp_sum+=a[i];
if(temp_sum>max)
max=temp_sum;
else if(temp_sum<0)
temp_sum=0;
}
return max;
}

在这一遍扫描数组当中,从左到右记录当前子序列的和temp_sum,若这个和不断增加,那么最大子序列的和max也不断增加(不断更新max)。如果往前扫描中遇到负数,那么当前子序列的和将会减小。此时temp_sum 将会小于max,当然max也就不更新。如果temp_sum降到0时,说明前面已经扫描的那一段就可以抛弃了,这时将temp_sum置为0。然后,temp_sum将从后面开始将这个子段进行分析,若有比当前max大的子段,继续更新max。这样一趟扫描结果也就出来了。

google面试试题汇总 
笔试题目:9道单选+3道问答
时间:100分钟
我做的是B卷。
单选题:
1,求两个二进制数的异或值,基本上学过一点计算机的东西的人都能对的题目。。
2,不记得了。。也是不需要思考的题目。。
3,大概是如下的函数:  
int someFunc(int x){
if (x == 0)
return 0;
else
return x + someFunc(x - 1);
}
问这个计算的是什么。。。
4,不记得了。。不需要思考吧。。
5,不记得了。。不需要思考吧。。
6,参见2,4,5。。
7,似乎需要思考一下。。
8,问链表结构和数组相比的优势不包括哪项,
包括:
插入的时间
删除的时间
存储空间
剩下两个不记得了。。
9,如下函数:
T(x) = 1 (x <= 1)
T(n) = 25 T(n/5) + n^2
问T(n)随n的增长。
选项大概是这样的:
O(n^2),O(n^2logn)等等的。。
问答:
1,写两个N*N的矩阵的乘法,给出了C的格式,你可以选择你喜欢的语言去写。。
int* multi(int* a1, int* a2, int N){
}
2,寻找一个单向链表的中项,如果存在两个则返回前一个。给出了C的格式,同样你可以选择。。。。
struct {
Node* next;
int value;
} Node;
Node* someFunc(Node* head){
}
3,给一个长度为n的整数数组,只允许用乘法不允许用除法,计算任意(n-1)个数的组合乘积中最大的一组。。。写出算法的时空复杂度。
ps:怀疑这道题目出错啦。。虽然我也做错了。。。。。。
一些补充:
1,问答的第一题是google上学期 intern的大题原题;
2,google很喜欢考链表,无论intern的面试以及两次的笔试都有这样的题目;
3,google一般大题第三道都是写算法的时空复杂度;
4,选择题基本上偏简单,但是要做得准确率高似乎并不那么容易;
5,根据传言,小道消息,人云亦云以及以讹传讹,google的高速审卷政策来源于审卷时以选择题为主,如果你全对啦,那么恭喜你pass啦;如果你错了好几道,那么下次努力吧,如果还有下次。。。大题基本是做参考的。。。

Google笔试题2006
选择题
1. 把一个无符号16位整数a的最高为置为1
2. Fibonacci,求f(4)使用递归调用f(1)的次数f(n) = f(n-1)+f(n-2)
f(0)=0, f(1)=1
a.5 b.4 c. 3 d. 4以上
3. if (xAS{print “1″}
S->AB{print “2″}
A->a{print “3″}
B->bC{print “4″}
B->dB{print “5″}
C->c{print “6″}
6. 有关哈希表正确的说法(不定项)
a.哈希表的效率和哈希函数。。。。相关
b.哈希表的解决冲突方法慢,回影响哈希表效率
c.使用链表哈希可使内存紧凑
7. 一种无饥饿调度方法是:
a. 轮叫调度
b.
c. 最短使用时间
d. 最新队列
8. 下列排序方法最差情况时间复杂度为O(n^2)的是:
a. 插入
b. 归并
c. 冒泡
d. 快速
编程题:
1. 求一个二叉树的高度,如果只有root结点,高度为0
2. 将稀疏疏组中的非零元素提取出来,用链表表示
3. 两个n维数组,已排序,为升序。设计算法求2n的数中
第n大的数。要求分析时间和空间复杂度。不用给出代码

==================================================================

这是部分google面试题目,希望后来者好运. 
1.求直方图的最大内接矩形,假设每个细条的宽度为1.这个题很hot,两个人来问.我没想出什么好的算法.

2.NxN行列有序的矩阵查找一个数.以前有人遇到过.O(N)的时间复杂度

3.给定一篇文章,求包含所有单词的最短摘要.O(N)的时间复杂度

4.将MxN的矩阵转秩,要求O(1)的空间复杂度.参考群论中cyclic group,group generator

5.开放式问题,怎么避免重复抓取网页

6.开放式问题,有些网站每天只允许有限次访问,怎么抓取网页使得索引尽量全面和新鲜

7.写一个singleton pattern的例子

8.vector vs. arraylist, growth strategy & complexity

9.在C++文件中只declare class A, 但不以任何方式define class A, 是做什么用

10.virtual function

11.讨论html vs. xhtml vs. xml

12.描述在浏览器中敲入一个网址后所发生的事情.dns,cache等

google浙大招聘笔试题 师兄只能帮你到这儿了的更多相关文章

  1. google2013校园招聘笔试题(全国)

    google2013校园招聘笔试题 1. 单项选择题1.1如果把传输速率定义为单位时间内传送的信息量(以字节计算)多少.关于一下几种典型的数据传输速率:1.使用USB2.0闪存盘,往USB闪存盘上拷贝 ...

  2. 2014 WAP校园招聘笔试题

    2014 WAP校园招聘笔试题 Problem's Link:   http://www.doc88.com/p-6751117015483.html WAP公司笔试题 We are planning ...

  3. Microsoft 2013校园招聘笔试题及解答

    Microsoft 2013校园招聘笔试题及解答 题目是自己做的,求讨论.吐槽.拍砖 1.      Which of the following callingconvension(s) suppo ...

  4. Microsoft2013校园招聘笔试题

    Microsoft2013校园招聘笔试题 继续求拍砖!!!! 1. You are managing the database of a book publichser, you currently ...

  5. C# - 2017微软校园招聘笔试题 之 MS Recognition[待解决]

    MS Recognition 在线提交: hihoCoder 1402 http://hihocoder.com/problemset/problem/1402 类似: OpenJudge - I:P ...

  6. 2017腾讯Web前端实习生招聘笔试题总结

    指针与引用的区别 考察margin塌陷 考察C++继承和~符号 考察TCP通讯过程 位码 三次握手 为什么不是两次握手 为什么不是四次握手 四次挥手 为什么要四次握手 TCP的状态 考察严格模式 进程 ...

  7. 京东2017校园招聘笔试题 【第K个幸运数】

    题目描述 4和7是两个幸运数字,我们定义,十进制表示中,每一位只有4和7两个数的正整数都是幸运数字. 前几个幸运数字为:4,7,44,47,74,77,444,447... 现在输入一个数字K,输出第 ...

  8. 九度OJ 1531 货币面值(网易游戏2013年校园招聘笔试题) -- 动态规划

    题目地址:http://ac.jobdu.com/problem.php?pid=1531 题目描述: 小虎是游戏中的一个国王,在他管理的国家中发行了很多不同面额的纸币,用这些纸币进行任意的组合可以在 ...

  9. PPS2013校园招聘笔试题

    转载请标明出处,原文地址:http://blog.csdn.net/hackbuteer1/article/details/11473405 一.简答题 (1)一位老师有2个推理能力很强的学生,他告诉 ...

随机推荐

  1. python 安装ssh和Scrapy

    在Python中没有专用的SSH模块,这需要手动的安装模块才行.Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,paramiko模块又依赖于pycrypto ...

  2. perl 自动发产品

    use Net::SMTP; use LWP::UserAgent; use HTTP::Cookies; use HTTP::Headers; use HTTP::Response; use Enc ...

  3. 用200行Python代码“换脸”

    介绍 本文将介绍如何编写一个只有200行的Python脚本,为两张肖像照上人物的“换脸”. 这个过程可分为四步: 检测面部标记. 旋转.缩放和转换第二张图像,使之与第一张图像相适应. 调整第二张图像的 ...

  4. 【操作系统】:Main features of the X86-64

    The combination of the new hardware supplied by Intel and AMD ,and the new versions of GCC targeting ...

  5. 如何安装系统认证签名过的APK

    如果你的App因为权限原因需要设置 android:sharedUserId="android.uid.system" 那么IDE编译出的包通常是无法直接安装的,查看控制台会发现报 ...

  6. map,area标签

    map,area标签 <img src ="planets.gif" alt="Planets" usemap ="#planetmap&quo ...

  7. 【HTML相关】iframe+javascript实现一个表单提交后多个处理文件按序处理

    最近在弄一个网页的问题,总结如下. [问题描述] 页面中包括以下几个部分:1)表单form,供用户输入图片文件:2)iframe1,显示a.php文件的内容,a.php接收客户端图片并保存,后台程序处 ...

  8. QT5.6 编译SQLServer驱动

    简要说下编译的主要步骤 @1:打开vs2015的命令行编译环境 ‘ @2:进入到cd到源码目录:cd C:\Qt\Qt5.6.0\5.6\Src\qtbase\src\plugins\sqldrive ...

  9. Spring Boot 探索系列 - 自动化配置篇

    26. Logging Prev  Part IV. Spring Boot features  Next 26. Logging Spring Boot uses Commons Logging f ...

  10. [转]如何申请和管理一个sourceforge项目

    假如你没有贡献免费源代码的想法,就不用继续读本文了.:) 如果读者的e文不错,作者建议你直接阅读sourceforge的 howto文档,他们整理得非常周到详实.本文只是作者的使用经验,也许可以给与作 ...