分享Google笔试题目

进修社 人气:1.09W

1、假设在n进制下,下面的等式成立,n值是()

分享Google笔试题目

567*456=150216

a、 9 b、 10 c、 12 d、 18

2、文法G:S->uvSvu|w所识别的语言是:()

a、uvw*vu b、(uvwvu)* c、uv(uv)*wvu(vu)* d、(uv)*w(vu)*

3、如下程序段输出是:()

char str[][10]={”Hello”,”Google”};

char *p=str[0];

count<

a、0 b、5 c、6 d、10

4、cnt=0

while(x!=1){

cnt=cnt+1;

if(x&1==0)

x=x/2;

else

x=3*x+1;

}

count<

当n=11时,输出:()

a、12 b、13 c、14 d、15

5、写一段程序判断一个有向图G中节点w是否从节点v可达。(如果G中存在一条从v至w的路径就说节点w是从v可达的)。以下算法是用C++写成的`,在bool Reachable函数中,你可以写出自己的算法。

class Graph{

public:

int NumberOfNodes();//返回节点的总数

bool HasEdge(int u,int v);//u,v是节点个数,从零开始依次递增,当有一条从u到v的边时,返回true

};

bool Reachable(Graph&G, int v, int w){

//请写入你的算法

}

6、给定一棵所有边的长度均为整数的树,现要求延长其中某些边,使得从根到任意节点的路径长度相等。问满足要求的树的边长度之和最小是多少?请写出你的算法,并分析时间复杂度。