网易研发类笔试题和面试题答案(二)

|来源:新高考网

  5。

  1) 例举Linux下多线程编程常用的pthread库提供的函数名并给出简要说明(至少给出5个)

  2) pthread库提供哪两种线程同步机制,列出主要API

  3) 使用pthread库的多线程程序编译时需要加什么连接参数?

  3。2 网易校园招聘笔试题

  Char array[] = “abcde”; char* s = array;

  Cout<

  -------------------------------------------------------------------------------------------

  什么是用户级线程和内核级线程?区别。

  -------------------------------------------------------------------------------------------

  从C++文件到生成exe 文件经过哪三个步骤?

  -------------------------------------------------------------------------------------------

  有个二维数组 A(6*8),每个元素占 6 字节,起始地址为 1000,请问最后一个元素 A[5][7]的起始地址为??? 数组A占内存大小为??? 假设以行优先,则A[1][4]起始地址为??? 1。 6*8*6=288

  2。 1000+(5*8+7)*6=1000+(5+7*6)*6=1282

  3。 1000+(1*8+4)*6=1072

  4。 1000+(4+7*6)*6=1276

  -------------------------------------------------------------------------------------------

  用C语言把双向链表中的两个结点交换位置,考虑各种边界问题。

  Struct Node

  {

  Node *Pv;

  Node *next;

  }

  Void exchange(Node *node1,Node *node2)

  {

  }

  -------------------------------------------------------------------------------------------

  *。dll,*。lib,*。exe 文件分别是什么,有什么区别?

  exe是直接作为进程执行,lib是在运行前就已经载入了的,dll在运行时可以随意被加载的。

  -------------------------------------------------------------------------------------------

  如右图所示,一个n*m 的矩阵M中,标记0为白色区域,标记 1为黑色区域,白色区域代表可以行走的区域,黑色区域代表阻挡,可以看到,如果在这个矩阵中只向上,下,左,右移动,那么有某些白色区域是不能到达的,我们称为这样的矩阵不是全相通的。

  (1) 如何验证一个矩阵是不是全相通?请给出算法思路。

  (2) 计算出你的算法的空间复杂度和时间复杂度

  (3) 用C/C++编写出代码,并在适当地方加上注释。

  -------------------------------------------------------------------------------------------

  附加题(20):使用八叉树算法把24位真彩色转化成 256色。24位真彩色包括 R,G,B颜色,每种颜色8 位。

  -------------------------------------------------------------------------------------------

  有 11 盆花,围成一圈,要求每次组合时,每盆花相邻的两盆花与上次不同,请问有多少排列方法?

  -------------------------------------------------------------------------------------------

  集合问题,一个村有70 人,进行PVP比赛,共有 4个职业:骑士,牧师,法师,刺客。

  已知有34人报名骑士,24人报名牧师,13人报名法师,32人报名刺客,12人既报名骑士又报名牧师,13人既报名牧师又报名法师,……

  3 人报名骑士,牧师和法师,……

  请问有多少人没有报名?以上数字为捏造。

  -------------------------------------------------------------------------------------------

  Void foo(int source* src,int *dest,int N)

  {

  Int count[256],index[256],i;

  For(I = 0;i<256;i++) count[i] = 0;

  For(I = 0;i

  Index[0] = 0;

  For(I = 1;i<256;i++) index[i] = index[ i-1] + coun

  For(I = 0;i

  {

  Dest[index[source[i]]] = source[i];

  Index[source[i]] = index[source[i]]+1;

  }

  }

  nt main()

  {

  Int src[] = {3,5,3,6,10,8};

  Int dest[] = {0,0,0,0,0,0}

  Int N = 6;

  Foo(source,dest,N);

  }

  Dest的结果为?

  改错题

  Char values[] = “NetEase”;

  Int main()

  {

  Char *buf;

  Int d = -1;

  Unsigned int ss = sizeof(values)/sizeof(value[0]);

  If(d<=ss)

  {

  Scanf(“%s %d”,buf,d);

  Printf(“%s,%s(%d)\n”,values,buf,d);

  If(d = 666)

  Printf(“you are lucky!”);

  }

  Return 0;

  }

  -------------------------------------------------------------------------------------------

  2 只宠物合成,1只有 5技能,1 只有4 技能,每个技能有 a%概率遗传,请问刚好有7 个技能遗传成功的概率是?

  -------------------------------------------------------------------------------------------

  Public class A

  {

  A(){cout<<”1”;}

  A(A &a){cout <<”2”;}

  ~A() {cout<<”3”;}

  }

  Public class B

  {

  B(){cout <<”4”;}

  B(B &b){cout<<”5”;}

  ~B(){cout<<”6”;}

  }

  Int main()

  {

  A* pa = B(A());

  Delete pa;

  Return 0;

  } 输出结果为?

  3。6 网易笔试题整理(部分含答案)

  1。10个人分成4组 有几种分法?

  如图:

  7 8 9 10

  6 1 2 11

  5 4 3 12

  16 15 14 13

  设“1”的坐标为(0,0) “7”的坐标为(-1,-1) 编写一个小程序,使程 序做到输入坐标(X,Y)之后显示出相应的数字。

  3。#include

  //example input and output

  //in 1 2 3 out 1 3 1

  //in 123456789 2 100 out 123456789 100 21

  long mex(long a,long b,long c)

  { long d;

  if(b==0) return 0;

  if(b==1) return a%c;

  d=mex(a,b/2,c); d*=d;这里忘了;d*=mex(a,b%2,c);d%=c;

  return d;

  }

  int main(void)

  { long x,y,z;

  while(1)

  { if(scanf(%d %d %d,&x,&y,&z)>3) return 0;

  if(x<0) { printf("too small\n");continue;}

  if(y<0) { printf("too small\n");continue;}

  if(z<1) { printf("too small\n");continue;}

  if(y>z) { printf("too big\n");continue;}

  if(z>1000000010) {printf("too big\n");continue}

  printf(%d %d %d,x,z,mex(x,y,z);

  }}

  根据这个程序,当已知一个输入,算出输出,如:输入 1 3 1 则输出 1 2 3 输入 123456789 100 21 输出 123456789 2 100

  4。写出对“知之者不如好之者,好之者不如乐之者”的理解。

  5。用中文写出尽可能多的中文语句、,要求包含有“都”的意思(all、both之意),但不能有“都”字 全部,大部分,很多,所有,极其多,

  6。new/delete和malloc/free的区别,并说说你在什么情况下会自另行建立自己的内存分配机制。

  前者是操作符,适合用在c++中,用于解决动态分配问题,可以自动调用构造函数,析构函数。后者没有这个功能,只是函数。

  7。求极限lim(x-[x]),x趋于-3。

  8。比较两个电路的可靠性。

  9。编程题:输入一个正整数,若该数能用几个连续正整数之和表示,则输出所有可能的正整数序列。

  10。有两个字符串 str1和str2,写一个函数实现在str1中查找str2的初始位置。要求不区分大小写。

  11。在字符串S中寻找最长的字符串x,条件是x存在于S中。即是如:abcabcdcd中的abc。

  12。求Fibonacci数列中第k个与前面所有数互质的数(除前面两个数 1,1 )。

  13。有100个真币和一个假币,只知道真币与假币不等重,要求只称两次,得出是真币重还是假币重。

  14。证明题:给出n个互不相同的分数数列a1/b1,a2/b2… an/bn ,证明(a1 + a2 + … + an) / (b1 + b2 + … + bn) 的值在数列a1/b1,a2/b2… an/bn 数列的最大值和最小值之间。 15。证明题:在三角形中,假设等角对等边,证明大角对大边。

  16。文学题:在以下的空白中填入相应的词(蔼、断、淡、泰)并解释其含义。

  自处超然,处事 然,无事澄言,处事 言,得意 然,失意 然。

  17。问答题:为什么现在的计算机采用二进制?而不是八进制或十六进制?你认为以后的计算机会采用几进制?

  18。程序设计题:给出若干个单词,组成字典,要求查找速度最快。

  19。有b1/a1,b2/a2,。。。。,bn/an 共n个分数,分母同号,证明:

  (b1+b2+。。。+bn)/(a1+a2+。。。+an)的值在上面n个分数值最大制和最小值之间。

  20。证明:三角形中大边对大角,已知等边对等角

  21。为什么计算机中多用二进制,16进制也用在程序中。你认为有没有可能回出现多进制的计算机,为什么

  22。一个没有拷贝构造函数和重载=运算符的String类,会出现什么问题,如何解决?

中国点击率最高的一篇文章 !