网站大量收购闲置独家精品文档,联系QQ:2885784924

我来说说华为机试剖析.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
受乔哥的启发,决定写一个关于华为机试的简介,首先声明本人并非大牛,也无权拿到华为的内部资料,以下内容大部分源自网络,还有一部分是自己的感悟,本文以整理和疏导为主。 由于我不会JAVA,在这也就不写JAVA的东西了吧,下面的内容以C/C++为主。 分为几个部分:第一部分是华为机试流程、题型等相关介绍,第二部分是一些经典题目的剖些,第三部分是一些提示和建议。 一、华为机试介绍 1.大致介绍 时间:120分钟 环境:Visual Studio(去年是vs2005)、Visual C++、Eclipse(Java) 题量:共3题 初级题——60分——3组测试数据 中级题——100分——5组测试数据 高级题——160分——8组测试数据 注:初级题和中级题为必答题,高级题为附加题。 提交次数:每题最多5次 评判方式:按通过测试数据组数给分,每通过一组得20分 2.考试说明 这里有一个老版的机试考试说明,供大家参考: C/C++,JAVA机试流程: ①打开IE浏览器,输入机试系统IP地址(以当天告知的地址为准); ②输入姓名、手机,选择“C/C++”或“JAVA”,登录; ③登录后显示题目,阅读题目并点击页面最下方“下载框架文件”,将文件解压到D盘; ④用VC6.0或Eclipse打开工程工程; ⑤补充函数体、调试; ⑥将工程压缩打包; ⑦返回IE浏览器中的试题页面,点击最下方的“提交”按钮,完成提交。 注意事项 华为的机试阅卷为电脑自动阅卷,大致流程是输入测试数据,判断结果是否正确,所以,在编写好程序后,一定要多测试几组数据,至少要保证题目中测试数据输入后,结果符合题目要求。 二、经典题目剖析 1.在分析具体题目之前,有几个注意事项说一下: 同学们平时写代码的编译环境不太一样,大致有GCC/G++,VC,VS,在这几种之中又细分了好多个版本,但是既然是准备华为机试,那么就装个最简单的VS2005吧,只要代码在这个版本上通过,相信机试的时候也不会出问题。 现在很多新旧编程标准交织,这几年还有很实用的C++11,但是为了机试,这些还是先别秀吧,你问为什么有这么好的东西却不让用?因为VS2005不支持呗,类似的还有atoi(), itoa() 这些局限于编译环境的函数也最好别用。 2.机试的时候分为3类题: 初级题——多为简单字符串处理或数字操作 中级题——在考察编程语言能力的基础上加入一定简单的算法和数据结构。 高级题——更多的算法和数据结构要求,代码量明显增大,栈、图、树、查找、有哪些信誉好的足球投注网站都在考察范围内。 具体题目(以下所有代码本人均在VS2005环境上编译测试通过) 排序方法总结 题1: 排序是编程语言里最基本的方法,目前典型的排序方法有:冒泡排序、快速排序、选择排序、简单插入排序、二分插入排序、希尔排序、归并排序等。既然是基础,那么就必然要了然于心。 代码见:1.cpp(打开:Ctrl + 鼠标左键点击) 排序算法这么多,比较麻烦,但是思想一定要了然于心,说不定面试的时候就会让你写个排序算法看看呢?但是如果我们只是在程序中用到一个排序的功能,大可不必话费很长的时间去写这些排序算法,C++中给出了一个sort函数,非常方便,大家可以去了解一下,因为使用起来非常简单,并且在接下来的题目中会用到,在这就不多讲了。 题2: 输入10个数字,按各个位上的和从小到大排序,如果相同,则按数字从小到大排序。 输入描述: 10个正整数,保证都在int范围内,用空格隔开 输出描述: 10个数字,其从大到小的值,用空格隔开,最后一个数字后不加空格 输入样例 11 3 2 4 5 9 8 7 10 6 输出样例 10 2 11 3 4 5 6 7 8 9 代码见:2.cpp 题3: 操作系统任务调度问题。操作系统任务分为系统任务和用户任务两种。其中,系统任务的优先级 50,用户任务的优先级 = 50且 = 255。优先级大于255的为非法任务,应予以剔除。现有一任务队列task[],长度为n,task中的元素值表示任务的优先级,数值越小,优先级越高。函数scheduler实现如下功能,将task[] 中的任务按照系统任务、用户任务依次存放到 system_task[] 数组和 user_task[] 数组中(数组中元素的值是任务在task[] 数组中的下标),并且优先级高的任务排在前面,数组元素为-1表示结束。 例如:task[] = {0, 30, 155, 1, 80, 300, 170, 40, 99}??? system_task[] = {0, 3, 1, 7, -1}??? user_task[] = {4, 8, 2, 6, -1} 代码见:3.cpp 题4: 输入一组身高

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档