您的位置:外企吧 >> 资讯 >> Google >> 面经试题 >> 查看资讯

2007Google笔试题来自浙江大学BBS

发布: 2008-5-11 19:55 |  作者: webmaster |  来源: 本站原创 |  查看: 132次

3Af3o6Bw2]_0一、单选

}0Xo&H$Tb'H0

v:es6l,G urX0d01、80x86中,十进制数-3用16位二进制数表示为?

}L1Y3a"oRM$Ix|0

O O?b!J02、假定符号-、*、$分别代表减法、乘法和指数运算,且

7U8Os|9B*b0tN&o0 外企吧r:n@ tB1j"E

1)三个运算符优先级顺序是:-最高,*其次,$最低;

"U c+}? |v"n0 外企吧y@(M2N6WbyH*k

2)运算符运算时为左结合。请计算3-2*4$1*2$3的值:

3vfN jg0 外企吧+| j\5cU"y'[5db5p

(A)4096,(B)-61,(C)64,(D)-80,(E)512 外企吧*O `%q9F8Q?0X{

外企吧x;]T | Z

3、下列伪代码中,参数是引用传递,结果是?

(HfOkFR,A}0

h6Um8zk-u0calc(double p, double q, double r){q=q-1.0;r=r+p}
/v&oHR/Y%i0main(){外企吧 vu%[0r1P1^1Xh D:@4F
  double a = 2.5, b = 9.0;
e],?&],W!{O3NR0  calc(b-a, a, a);
3Gi-[v:w0  print(a);
T K+P;AI BLQ(uG0}
YcM+[,ul ^0(A)1.5 (B)2.5 (C)10.5 (D)8 (E)6.5

:j.Xq8\M QBA5u0 外企吧vP8j*a)O P7z

4、求输出结果: 外企吧e)L&B T#UT(N+Q

外企吧__ C1m,t w m_ b2X-?

int foo(int x, int y){外企吧W/UhI,z
  if(x <=0 || y <= 0) return 1;外企吧P)Xq+L JW#z{X @+Y
  return 3 * foo(x - 1, y / 2);外企吧Ri5UR2X'P0L7tz
}
Xf+@g2d0printf("%d\n", foo(3, 5));
^t EU}-t o*U0(A)81 (B)27 (C)9 (D)3 (E)1 外企吧}5yE0y#eagy&y.D

$m'OMwr/V9\/ou05、下列哪个数据结构在优先队列中被最广泛使用?

:W!V.mENVHO9|0

3c2be{X$u'XTN^8W(f$W0(A)堆 (B)数组 (C)双向链表 (D)图 (E)向量 外企吧.CrG6oF%k

Z2l+STe;IO4^F06、以下算法描述了一个在n国元素的双向链表中找到第k个元素的方法(k >= 1且k <= n): 外企吧LY%xu-M1n [

外企吧Fl dX6HWd

如果k <= n - k,从链表开始往前进k-1个元素。

'jy2M*P4Biao2q0 外企吧 ]AHR$nTxsVZ%i

否则,从终点出发,往回走n - k个元素。 外企吧;Y0e9{$?*GT

D U/\tG0这个算法的时间代价是?

7VD7cYg2Y d0 外企吧 Q1^'Bq'^8F+r

(A)θ(nlogn) (B)θ(max{k, n - k}) (C)θ(k + (n - k)) 外企吧#R$N.cY"Y1B-u

zc8N_9|!z1NxPD0(D)θ(max{k, k - n}) (E)θ(min{k, n - k}) 外企吧)t+i.MU(PF

Pq)^8F*r1o5P07、有一个由10个顶点组成的图,每个顶点有6个度,那么这个图有几条边? 外企吧6} ri!X u6F

h nN W!k%?0(A)60 (B)30 (C)20 (D)80 (E)90

D&fx Q;|8R0

Z)e-F5E$~K,`x08、正则表达式L = x*(x|yx+)。下列哪个字符串不符合L

.U'}n!E(U0 外企吧/Q3fy8Rk5X g

(A)x (B)xyxyx (C)xyx (D)yxx (E)yx 外企吧iu%PFS|hJB1?_

外企吧+?[)pPZ

9、为读取一块数据而准备磁盘驱动器的总时间包括 外企吧8J1Z&GyXS'f/P

4H@._H"ck0(A)等待时间 (B)寻道时间 (C)传输时间 (D)等待时间加寻道时间 外企吧)NE%WWWa]h

外企吧:Sjv0w$b

(E)等待时间加寻道时间加传输时间 外企吧xn!XzJ/kpbd

外企吧1qiM5OAy

二、算法

K5JK s?aR W0 外企吧#xv~0}*R5nv5ei^"@

1、打印出一个二叉树的内容。

?@Qam5W.b+yj0

a|.ooZ5dw02、在一个字符串中找到第一个只出现一次的字符。如abaccdeff,输出b。 外企吧(v]w"rSQ0He3ii

)TZs*bJ y;Qy03、给定一个长度为N的整数数组(元素有正有负),求所有元素之和,最大的一个子数组。分析算法时空复杂度。不必写代码。

#[t~8Zb.BU]0 外企吧Lh/S;gE"C__D

外企吧6Lh M.]^w.Q
附上动态规划做法的答案: 外企吧:J*?,H B2Q n

!BrU#c.G;d)`+j U0最大子序列

3p%t"hc$_}0 外企吧;t EO,i|/c] X

问题:

l:G6|A/o I#D0

t^CM"Wt"{'X;P0给定一整数序列A1, A2,... An (可能有负数),求A1~An的一个子序列Ai~Aj,使得Ai到Aj的和最大 外企吧 bP~f%|w

w'E&V o!|$y;S0例如:整数序列-2, 11, -4, 13, -5, 2, -5, -3, 12, -9的最大子序列的和为21。对于这个问题,最简单也是最容易想到的那就是穷举所有子序列的方法。利用三重循环,依次求出所有子序列的和然后取最大的那个。当然算法复杂度会达到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]。利用这一个递推,我们就可以得到下面这个算法:

*r~pb&]q IJ7w0

c:t!dWU!@s#_-S8f#`0int max_sub(int a[],int size)外企吧2l0k+f2t}#z2y S
{外企吧#a#AM yO'J%} p
  int i,j,v,max=a[0];外企吧(WVJ }*SY:S
  for(i=0;i<size;i++)
{[I!T&p h4ZR6Z#w0  {外企吧$]!Q'HY8f(j6cm*VF1o
    v=0;外企吧|(W&p3UnN-S]
    for(j=i;j<size;j++)
6FC+W%}0Z1O:[0    {
d"sE;~2R%d||1H0      v=v+a[j];//Sum(i, j+1) = Sum(i, j) + A[j+1]
NxihH!?1[z0        if(v>max)外企吧G~ZF$a z _
         max=v;外企吧&r&Nl3EVV-S
    }外企吧Zr` Y^(Q B
  }外企吧(vYmd3po z:T)p
  return max;
[EGe.O2r9x.^H6dR0}

UNs${vFW0

:jP.K!oU6l.s u0外企吧,o3n-Q w4QMJ"f{
那怎样才能达到线性复杂度呢?这里运用动态规划的思想。先看一下源代码实现:外企吧,Q#TovBS
int max_sub2(int a[], int size)外企吧K ?uDwrb
{外企吧N Lv]7Q\sL`
  int i,max=0,temp_sum=0;
^~E1d U E%C0  for(i=0;i<size;i++)
9{g2O+vKlq}t0  {
InjV8qq#k2T0      temp_sum+=a[i];外企吧f'Fy \,c-X7K?
      if(temp_sum>max)
uK,Tv5b2l/S)ufu0        max=temp_sum;
$L(p8ES4C\0      else if(temp_sum<0)外企吧LA.\+j.E cK/Q-S2u
        temp_sum=0;
N/YV jm&D0  }
0K)YqN5r6f#d0  return max;
)x$D ["h6c2za0}

hPBoUc\0 外企吧'P}M&AoI~Q4{

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

|)H#zt#|0c[cT0
打印 | 收藏此页 |  Mail给朋友 | 举报
上一篇 下一篇
tyw88 (2008-8-15 09:32:11, 评分:0)

美伦<a href="http://www.czfw.net/education/" target="_blank">少儿英语</a>坚持100%外教授课,坚持自然主义母语教学法,致力于让每个非英语国家的<a href="http://www.czfw.net/education/" target="_blank">英语学...

tyw88 (2008-8-15 09:31:30, 评分:0)

论翻译公司间谍案与中西方文化差异
据美国《华盛顿时报》网站12月21日报道,美国情报官员说,中国方面曾通过一个中文翻译服务机构以获得美国国家安全局设在夏威夷的一个监听站的情报。这个间谍渗透案是在几年前海军部犯罪调查局进行的一次重大反情报调查中发现的。这次反情...

Guest (2008-7-30 12:30:56, 评分:0)

美伦<a href="http://www.czfw.net/education/" target="_blank">少儿英语</a>坚持100%外教授课,坚持自然主义母语教学法,致力于让每个非英语国家的<a href="http://www.czfw.net/education/" target="_blank">英语学...

Guest (2008-7-30 12:30:43, 评分:5)

评5分

Guest (2008-7-30 12:28:37, 评分:0)

论翻译公司间谍案与中西方文化差异
据美国《华盛顿时报》网站12月21日报道,美国情报官员说,中国方面曾通过一个中文翻译服务机构以获得美国国家安全局设在夏威夷的一个监听站的情报。这个间谍渗透案是在几年前海军部犯罪调查局进行的一次重大反情报调查中发现的。这次反情...

Guest (2008-7-29 08:49:24, 评分:0)

论翻译公司间谍案与中西方文化差异
据美国《华盛顿时报》网站12月21日报道,美国情报官员说,中国方面曾通过一个中文翻译服务机构以获得美国国家安全局设在夏威夷的一个监听站的情报。这个间谍渗透案是在几年前海军部犯罪调查局进行的一次重大反情报调查中发现的。这次反情...

Guest (2008-7-29 08:48:52, 评分:0)

美伦<a href="http://www.czfw.net/education/" target="_blank">少儿英语</a>坚持100%外教授课,坚持自然主义母语教学法,致力于让每个非英语国家的<a href="http://www.czfw.net/education/" target="_blank">英语学...

 

评分:0

发表评论
seccode 换一个
【已有7位网友发表了看法,点击查看全部评论