华为算法考试题库及答案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

华为算法考试题库及答案

单项选择题(每题2分,共10题)

1.以下哪种算法复杂度最低?

A.O(n)

B.O(n^2)

C.O(logn)

D.O(2^n)

2.快速排序的平均时间复杂度是?

A.O(n)

B.O(n^2)

C.O(nlogn)

D.O(logn)

3.以下哪个是稳定排序算法?

A.快速排序

B.冒泡排序

C.选择排序

D.堆排序

4.深度优先搜索属于?

A.贪心算法

B.分治算法

C.动态规划

D.枚举算法

5.计算斐波那契数列适合用?

A.贪心算法

B.分治算法

C.动态规划

D.枚举算法

6.以下哪种数据结构常用于广度优先搜索?

A.栈

B.队列

C.二叉树

D.哈希表

7.以下哪个不是图的遍历算法?

A.深度优先搜索

B.广度优先搜索

C.最短路径算法

D.拓扑排序

8.归并排序的空间复杂度是?

A.O(n)

B.O(n^2)

C.O(logn)

D.O(1)

9.动态规划的核心是?

A.最优子结构

B.贪心选择

C.分治思想

D.回溯

10.以下哪种算法常用于解决背包问题?

A.贪心算法

B.分治算法

C.动态规划

D.枚举算法

答案:1.C2.C3.B4.D5.C6.B7.D8.A9.A10.C

多项选择题(每题2分,共10题)

1.以下哪些是时间复杂度的表示?

A.O(n)

B.Ω(n)

C.Θ(n)

D.o(n)

2.下列属于贪心算法应用的有?

A.哈夫曼编码

B.背包问题

C.最短路径算法

D.拓扑排序

3.以下哪些是分治算法的步骤?

A.分解

B.解决

C.合并

D.递归

4.以下哪些数据结构支持快速查找?

A.哈希表

B.平衡二叉树

C.栈

D.队列

5.下列哪些排序算法是基于比较的?

A.快速排序

B.冒泡排序

C.归并排序

D.基数排序

6.以下哪些算法可用于处理字符串匹配?

A.暴力匹配

B.二分查找

C.动态规划

D.哈希算法

7.以下哪些属于动态规划的优化技巧?

A.记忆化搜索

B.状态压缩

C.贪心选择

D.剪枝

8.图的存储结构有?

A.邻接矩阵

B.邻接表

C.哈希表

D.栈

9.以下哪些算法可用于查找图中的环?

A.深度优先搜索改进

B.广度优先搜索改进

C.拓扑排序

D.最短路径算法

10.以下哪些是算法设计的基本方法?

A.枚举算法

B.贪心算法

C.分治算法

D.动态规划

答案:1.ABCD2.ABC3.ABC4.AB5.ABC6.ACD7.AB8.AB9.AB10.ABCD

判断题(每题2分,共10题)

1.算法复杂度只考虑时间复杂度。()

2.所有的排序算法平均时间复杂度都能达到O(nlogn)。()

3.贪心算法总能找到全局最优解。()

4.分治算法一定比枚举算法效率高。()

5.哈希表查找元素时间复杂度是O(1)。()

6.动态规划只能解决最优问题。()

7.深度优先搜索和广度优先搜索适用于所有图。()

8.归并排序是稳定排序算法。()

9.算法设计时不用考虑空间复杂度。()

10.拓扑排序可以判断图中是否有环。()

答案:1.×2.×3.×4.×5.√6.×7.×8.√9.×10.×

简答题(总4题,每题5分)

1.简述贪心算法的基本思想。

贪心算法是在对问题求解时,总是做出在当前看来是最好的选择,不从整体最优上加以考虑,只希望通过局部最优解来得到全局最优解。

2.简述分治算法的基本步骤。

分解:将原问题分解为若干个规模较小、相互独立、与原问题形式相同的子问题;解决:若子问题规模较小而容易被解决则直接解,否则递归地解各个子问题;合并:将各个子问题的解合并为原问题的解。

3.简述动态规划与分治算法的区别。

分治算法是把问题分解成相互独立的子问题,递归求解子问题后合并得到原问题解;动态规划是把问题分解成相互重叠的子问题,通过保存子问题解避免重复计算,从底向上求解。

4.简述图的深度优先搜索过程。

从起始顶点开始,访问起始顶点,标记为已访问,然后递归访问其未访问的邻接顶点,当一个顶点的所有邻接顶点都被访问后,回溯到上一层递归继续访问其他未访问顶点,直到所有顶点都被访问。

讨论题(总4题,每题5分)

1.比较快速排序和归并排序的优缺点。

快速排序平均时间复杂度低,空间复杂度O(logn),但最坏情况是O(n^2),不稳定;归

文档评论(0)

星辰 + 关注
实名认证
文档贡献者

执着追梦 曰常爱折腾生活

1亿VIP精品文档

相关文档