人力资源方案案例华为笔试题大全史上最齐全Word下载.docx

上传人:b****3 文档编号:17926410 上传时间:2022-12-12 格式:DOCX 页数:82 大小:58.56KB
下载 相关 举报
人力资源方案案例华为笔试题大全史上最齐全Word下载.docx_第1页
第1页 / 共82页
人力资源方案案例华为笔试题大全史上最齐全Word下载.docx_第2页
第2页 / 共82页
人力资源方案案例华为笔试题大全史上最齐全Word下载.docx_第3页
第3页 / 共82页
人力资源方案案例华为笔试题大全史上最齐全Word下载.docx_第4页
第4页 / 共82页
人力资源方案案例华为笔试题大全史上最齐全Word下载.docx_第5页
第5页 / 共82页
点击查看更多>>
下载资源
资源描述

人力资源方案案例华为笔试题大全史上最齐全Word下载.docx

《人力资源方案案例华为笔试题大全史上最齐全Word下载.docx》由会员分享,可在线阅读,更多相关《人力资源方案案例华为笔试题大全史上最齐全Word下载.docx(82页珍藏版)》请在冰豆网上搜索。

人力资源方案案例华为笔试题大全史上最齐全Word下载.docx

华为笔试题含答案[软件工程题]

写一个程序,要求功能:

求出用1,2,5这三个数不同个数组合的和为100的组合个数。

如:

100个1是一个组合,5个1加19个5是一个组合。

请用C++语言写。

答案:

最容易想到的算法是:

设x是1的个数,y是2的个数,z是5的个数,number是组合数注意到0<

=x<

=100,0<

=y<

=50,0<

=z=20,所以可以编程为:

number=0;

for(x=0;

x<

=100;

x++)for(y=0;

y<

=50;

y++)for(z=0;

z<

=20;

z++)if((x+2*y+5*z)==100)number++;

cout<

<

number<

endl;

上面这个程序一共要循环100*50*20次,效率实在是太低了

事实上,这个题目是一道明显的数学问题,而不是单纯的编程问题。

我的解法如下:

因为x+2y+5z=100

所以x+2y=100-5z,且z<

=20x<

=100y<

=50所以(x+2y)<

=100,且(x+5z)是偶数

对z作循环,求x的可能值如下:

z=0,x=100,98,96,...0

z=1,x=95,93,...,1

z=2,x=90,88,...,0

z=3,x=85,83,...,1

z=4,x=80,78,...,0

......

z=19,x=5,3,1z=20,x=0

因此,组合总数为100以内的偶数+95以内的奇数+90以内的偶数+...+5以内的奇数+1,

即为:

(51+48)+(46+43)+(41+38)+(36+33)+(31+28)+(26+23)+(21+18)+(16+13)+(11+8)+(6+3)+1

某个偶数m以内的偶数个数〔包括0〕可以表示为m/2+1=(m+2)/2某个奇数m以内的奇数个数也可以表示为(m+2)/2所以,求总的组合次数可以编程为:

number=0;

for(intm=0;

m<

m+=5)

{

number+=(m+2)/2;

}

cout<

这个程序,只需要循环21次,两个变量,就可以得到答案,比上面的那个程序高效了许多倍----只是因为作了一些简单的数学分析

这再一次证明了:

计算机程序=数据结构+算法,而且算法是程序的灵魂,对任何工程问题,当用软件来实现时,必须选取满足当前的资源限制,用户需求限制,开发时间限制等种

种限制条件下的最优算法。

而绝不能一拿到手,就立刻用最容易想到的算法编出一个程序了事——这不是一个专业的研发人员的行为。

那么,那种最容易想到的算法就完全没有用吗?

不,这种算法正好可以用来验证新算法的正确性,在调试阶段,这非常有用。

在很多大公司,例如微软,都采用了这种方法:

在调试阶段,对一些重要的需要好的算法来实现的程序,而这种好的算法又比拟复杂时,同时用容易想到的算法来验证这段程序,如果两种算法得出的结果不一致〔而最容易想到的算法保证是正确的〕,那么说明优化的算法出了问题,需要修改。

可以举例表示为:

#ifdefDEBUGintsimple();

#endif

intoptimize();

inafunction:

result=optimize();

ASSERT(result==simple());

这样,在调试阶段,如果简单算法和优化算法的结果不一致,就会打出断言。

同时,在程序的发布版本,却不会包含笨重的simple()函数。

——任何大型工程软件都需要预先设计良好的调试手段,而这里提到的就是一种有用的方法。

一个学生的信息是:

姓名,学号,性别,年龄等信息,用一个链表,把这些学生信息连在一起,给出一个age,在些链表中删除学生年龄等于age的学生信息。

#include"

stdio.h"

conio.h"

structstu{charname[20];

charsex;

intno;

intage;

structstu*next;

}*linklist;

structstu*creatlist(intn)

inti;

//h为头结点,p为前一结点,s为当前结点structstu*h,*p,*s;

h=(structstu*)malloc(sizeof(structstu));

h->

next=NULL;

p=h;

for(i=0;

i<

n;

i++)

s=(structstu*)malloc(sizeof(structstu));

p->

next=s;

printf("

Pleaseinputtheinformationofthestudent:

namesexnoage\n"

);

scanf("

%s%c%d%d"

s->

name,&

s->

sex,&

no,&

age);

p=s;

Createsuccessful!

"

return(h);

voiddeletelist(structstu*s,inta)

structstu*p;

while(s->

age!

=a)

p=s;

s=s->

next;

}if(s==NULL)

Therecordisnotexist."

else

p->

next=s->

printf("

Deletesuccessful!

voiddisplay(structstu*s)

while(s!

=NULL)

%s%c%d%d\n"

name,s->

sex,s->

no,s->

s=s->

intmain()

structstu*s;

intn,age;

Pleaseinputthelengthofseqlist:

\n"

%d"

&

n);

s=creatlist(n);

display(s);

Pleaseinputtheage:

deletelist(s,age);

display(s);

return0;

2、实现一个函数,把一个字符串中的字符从小写转为大写。

voiduppers(char*s,char*us)

for(;

*s!

='

\0'

;

s++,us++)

if(*s>

a'

*s<

z'

*us=*s-32;

*us=*s;

*us='

char*s,*us;

charss[20];

Pleaseinputastring:

%s"

ss);

s=ss;

uppers(s,us);

Theresultis:

\n%s\n"

us);

getch();

随机输入一个数,判断它是不是对称数〔回文数〕〔如3,121,12321,45254〕。

不能用字符串库函数

/***************************************************************

1.

函数名称:

Symmetry

功能:

判断一个数时候为回文数(121,35653)输入:

长整型的数

输出:

假设为回文数返回值为1esle0

******************************************************************/unsignedcharSymmetry(longn)

longi,temp;

i=n;

temp=0;

while(i)//不用出现长度问题,将数按上下位掉换

temp=temp*10+i%10;

i/=10;

return(temp==n);

方法一

/*---------------------------------------------------------------------------

判断字符串是否为回文数字实现:

先将字符串转换为正整数,再将正整数逆序组合为新的正整数,两数相同则为回文数字输入:

char*s:

待判断的字符串输出:

无返回:

0:

正确;

1:

待判断的字符串为空;

2:

待判断的字符串不为数字;

3:

字符串不为回文数字;

4:

待判断的字符串溢出

----------------------------------------------------------------------------*/

unsignedIsSymmetry(char*s)

char*p=s;

longnNumber=0;

longn=0;

longnTemp=0;

/*判断输入是否为空*/if(*s==\'

\\0\'

)return1;

/*将字符串转换为正整数*/while(*p!

=\'

/*判断字符是否为数字*/if(*p<

\'

0\'

||*p>

9\'

)return2;

/*判断正整数是否溢出*/

if((*p-\'

)>

(4294967295-(nNumber*10)))return4;

nNumber=(*p-\'

)+(nNumber*10);

p++;

/*将数字逆序组合,直接抄楼上高手的代码,莫怪,呵呵*/n=nNumber;

while(n)

if((n%10)>

(4294967295-(nTemp*10)))

return3;

nTemp=nTemp*10+n%10;

n/=10;

/*比拟逆序数和原序数是否相等*/if(nNumber!

=nTemp)

return0;

方法二

先得到字符串的长度,再依次比拟字符串的对应位字符是否相同输入:

字符串不为回文数字

unsignedIsSymmetry_2(char*s)

intnLen=0;

inti=0;

/*得到字符串长度*/while(*p!

nLen++;

p++;

/*长度不为奇数,不为回文数字*/if(nLen%2==0)

return4;

/*长度为1,即为回文数字*/if(nLen==1)

/*依次比拟对应字符是否相同*/p=s;

i=nLen/2-1;

while(i)

if(*(p+i)!

=*(p+nLen-i-1))return3;

i--;

求2~2000的所有素数.有足够的内存,要求尽量快

答案:

intfindvalue[2000]={2};

staticintfind=1;

booladjust(intvalue)

assert(value>

=2);

if(value==2)returntrue;

for(inti=0;

=find;

if(value%findvalue[i]==0)returnfalse;

findvalue[find++];

returntrue;

华为最后三个大题

1.A,B,C,D四个进程,A向buf里面写数据,B,C,D向buf里面读数据,当A写完,且B,C,D都读一次后,A才能再写。

用P,V操作实现。

2.将单向链表reverse,如ABCD变成DCBA,只能搜索链表一次。

3.将二叉树的两个孩子换位置,即左变右,右变左。

不能用递规〔变态!

华为笔试题:

华为笔试题之一二

给大家说几个:

〔感觉华为不过如此,虽然我的分不高,因为很多题我做给他实在是侮辱我的智商〕1。

大意如下:

38头牛中选出3头跑得最快的,使用一个每次只能供6头比赛的场地,要求用最快的方法。

〔我给一

个最傻瓜的答案,因为我发现一起笔试的有且恰好有38个人,不知道**什么意思?

2。

公司职员知道老板的年龄,不知道他女儿的年龄,老板3个女儿的年龄相加为13,相乘为老板年龄,且只有一个女儿的年龄大于5岁,求这4个的年龄?

〔网上有一大堆答案!

3。

原题是2002年以前的一道大学生数学建模竞赛的题,是说一个学生冒雨从宿舍去食堂吃饭,200米的距离内,问是走着少淋雨还是跑着少?

〔该题简化了大局部的假设,只剩下一点点问题要你解决,做着没劲!

选择题:

〔每题2分,共100分〕

1、以下属于物理层的设备是〔〕

A、中继器

B、以太网交换机

C、桥

D、网关

2、在以太网中,是根据〔〕地址来区分不同的设备的。

A、LLC地址

B、MAC地址

C、IP地址

D、IPX地址

3、以下为传输层协议的是〔〕

A、IP

B、ICMP

C、UDP

D、SPX

4、以下对MAC地址描述正确的选项是〔〕

A、由32位2进制数组成

B、由48位2进制数组成

C、前6位16进制由IEEE负责分配

D、后6位16进制由IEEE负责分配

5、以下属于数据链路层功能的是〔〕

A、定义数据传输速率

B、定义物理地址

C、描述网络拓扑结构

D、流控制

6、IEEE802.3u标准是指〔〕

A、以太网

B、快速以太网

C、令牌环网

D、FDDI网

7、如果要将两计算机通过双绞线直接连接,正确的线序是〔〕A、1--1、2--2、3--3、4--4、5--5、6--6、7--7、8--8

B、1--2、2--1、3--6、4--4、5--5、6--3、7--7、8--8

C、1--3、2--6、3--1、4--4、5--5、6--2、7--7、8--8

D、两计算机不能通过双绞线直接连接

8、在和规程中,控制信号RTS表示〔〕

A、数据终端准备好;

B、数据准备好;

C、数据载体检测;

D、请求发送;

E、去除发送。

9、路由器作为网络互连设备,必须具备以下哪些特点。

〔〕

A、至少支持两个网络接口

B、协议至少要实现到网络层

C、至少支持两种以上的子网协议

D、至少具备一个备份口

E、具有存储、转发和寻径功能

F、一组路由协议

G、必须有较高的协议处理能力

10、路由器的作用有〔〕

A、异种网络互连

B、子网间的速率适配

C、连接局域网内两台以上的计算机

D、隔离网络,防止网络风暴,指定访问规则〔防火墙〕

E、子网协议转换

F、加快网络报文的传递速度

G、路由〔寻径〕:

路由表建立、刷新、查找

H、报文的分片与重组

11、调用上一条历史命令的快捷键是()

A、CTRL-P

B、CTRL-O

C、ALT-P

D、ALT-O

12、交换机工作在OSI七层的哪一层?

〔〕

A、一层

B、二层

C、三层

D、三层以上

13、以下对CSMA/CD描述正确的选项是〔〕

A、在数据发送前对网络是否空闲进行检测

B、在数据发送时对网络是否空闲进行检测

C、在数据发送时对发送数据进行冲突检测

D、发生碰撞后MAC地址小的主机拥有发送优先权

14、以下对STOREANDFORWARD描述正确的选项是〔〕

A、收到数据后不进行任何处理,立即发送

B、收到数据帧头后检测到目标MAC地址,立即发送

C、收到整个数据后进行CRC校验,确认数据正确性后再发送

D、发送延时较小

E、发送延时较大

15、以下对交换机工作方式描述正确的选项是〔〕

A、可以使用半双工方式工作

B、可以使用全双工方式工作

C、使用全双工方式工作时要进行回路和冲突检测

D、使用半双工方式工作时要进行回路和冲突检测

16、VLAN的主要作用有〔〕

A、保证网络平安

B、抑制播送风暴

C、简化网络管理

D、提高网络设计灵活性

17、在交换机中用户权限分为几个级别〔〕

A、1

B、2

C、3

D、4

18、在路由器的配置过程中查询以S开头所有命令的方法是〔〕

A、直接使用?

B、S?

C、S?

D、DIRS*

19、第一次配置路由器时可以使用的方法为〔〕

A、使用CON口本地配置

B、使用CON口远程配置

C、使用AUX口远程配置

D、使用TELNET远程配置

20、在何种状态下可以为路由器改名〔〕

A、普通模式

B、超级模式

C、全局模式

D、接口模式

21、某公司申请到一个C类IP地址,但要连接6个的子公司,最大的一个子公司有26台计算机,每个子公司在一个网段中,则子网掩码应设为〔〕。

A、

B、

C、

D、

22、与10.110.12.29mask255.255.255.224属于同一网段的主机IP地址是〔〕。

23、ARP协议的作用是〔〕

A、将端口号映射到IP地址

B、连接IP层和TCP层

C、播送IP地址

D、将IP地址映射到第二层地址

24、当路由器接收的IP报文的TTL值等于1时,采取的策略是〔〕

A、丢掉该分组

B、将该分组分片

C、转发该分组

D、以上答案均不对

25、在NetWare网络中,客户需要访问某个类型的效劳器时,首先要发送一个〔〕播送报文来寻找效劳器

A、Rip

B、Sap

C、Gns

D、Arp

26、IPX地址网络地址有〔〕个字节

A、10

B、8

C、4

D、6

27、对于帧中继描述正确的选项是〔〕

A、使用具有本地意义的DLCI描述PVC

B、使用具有全局意义的DLCI描述PVC

C、使用具有本地意义的DLCI

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1