算法练习题.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法练习题

一、判断题1-1算法分析的两个主要方面是时间复杂度和空间复杂度的分析。 (2分)T F1-2将NNN个数据按照从小到大顺序组织存放在一个单向链表中。如果采用二分查找,那么查找的平均时间复杂度是O(logN)O(logN)O(logN)。 (3分)T F1-3通过对堆栈S操作:Push(S,1), Push(S,2), Pop(S), Push(S,3), Pop(S), Pop(S)。输出的序列为:123。 (3分)T F1-4所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。 (2分)T F1-5某二叉树的前序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无右孩子。 (3分)T F1-6在一棵二叉搜索树上查找63,序列39、101、25、80、70、59、63是一种可能的查找时的结点值比较序列。 (3分)T F1-7将1、2、3、4、5、6顺序插入初始为空的AVL树中,当完成这6个元素的插入后,该AVL树的先序遍历结果是:4、2、1、3、5、6。 (3分)T F1-8一棵有124个结点的完全二叉树,其叶结点个数是确定的。 (3分)T F1-9用邻接表法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关。 (3分)T F1-10如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G中一定有回路。 (3分)T F二、选择题2-1下列函数中,哪个函数具有最快的增长速度? (4分)A、N^2logNNB、N(logN)^4C、N^3?D、NlogN^22-2给定N×NN\times NN×N的二维数组A,则在不改变数组的前提下,查找最大元素的时间复杂度是:(4分)A、O(N^2)B、O(NlogNC、O(ND、O(N^2 logN2-3给定程序时间复杂度的递推公式:T(1)=1T(1)=1T(1)=1,T(N)=2T(N/2)+NT(N)=2T(N/2)+NT(N)=2T(N/2)+N。则程序时间复杂度是:(4分)A、O(logN)B、O(N)C、O(NlogN)D、O(N^2)?2-4设h为不带头结点的单向链表。在h的头上插入一个新结点t的语句是:(4分)A、h=t; t-next=h-next;B、t-next=h-next; h=t;C、h=t; t-next=h;D、t-next=h; h=t;2-5若借助堆栈将中缀表达式a+b*c+(d*e+f)*g转换为后缀表达式,当读入f时,堆栈里的内容是什么(按堆栈自底向上顺序)? (4分)A、+(*+B、+(+C、++(+D、abcde2-6若用大小为6的数组来实现循环队列,且当前front和rear的值分别为0和4。当从队列中删除两个元素,再加入两个元素后,front和rear的值分别为多少? (4分)A、2和0B、2和2C、2和4D、2和62-7三叉树中,度为1的结点有5个,度为2的结点3个,度为3的结点2个,问该树含有几个叶结点? (4分)A、8B、10C、12D、132-8已知一棵二叉树的先序遍历结果是ABC,则以下哪个序列是不可能的中序遍历结果: (4分)A、ABCB、BACC、CBAD、CAB2-9在一个用数组表示的完全二叉树中,如果根结点下标为1,那么下标为17和19这两个结点的最近公共祖先结点在哪里(数组下标)?(注:两个结点的“公共祖先结点”是指同时都是这两个结点祖先的结点) (4分)A、8B、4C、2D、12-10将6、4、3、5、8、9顺序插入初始为空的最大堆(大根堆)中,那么插入完成后堆顶的元素为: (4分)A、3B、5C、6D、92-11设一段文本中包含字符{a, b, c, d, e},其出现频率相应为{3, 2, 5, 1, 1}。则经过哈夫曼编码后,文本所占字节数为: (4分)A、40B、36C、25D、122-12在并查集问题中,已知集合元素0~8所以对应的父结点编号值分别是{ 1, -4, 1, 1, -3, 4, 4, 8, -2 }(注:?n-n?n表示树根且对应集合大小为nnn),那么将元素6和8所在的集合合并(要求必须将小集合并到大集合)后,该集合对应的树根和父结点编号值分别是多少? (4分)A、1和-6B、4和-5C、8和-5D、8和-63-1下列代码的功能是从一个大顶堆H的某个指定位置p开始执行下滤。voidPercolateDown( int p, PriorityQueue H ){int child;ElementTypeTmp = H-Elements[p];for ( ; p * 2 = H-Size; p = child ) {chil

文档评论(0)

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

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

1亿VIP精品文档

相关文档