算法与数据结构练习题.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精品文档 精品文档 PAGE PAGE8 精品文档 PAGE 《算法与数据结构》习题 1 一、单项选择题 1.数据结构从逻辑上分为( )。 A.动态结构和静态结构 B.内部结构和外部结构 C.紧凑结构和非紧凑结构 D.线性结构和非线性结构 2.栈和队列的共同点是( )。 A.都是先进后出 B.都是后进先出 C.只允许在端点处插入和删除元素 D.没有共同点 3.若按从左到右的顺序读入已知序列 a、b、c、d、e、f、g中的元素,然后结 合栈的操作,能得到下列序列中的哪些序列?( ) A.decfbga B.fegdacb C.efdgbca D.dcbefag 在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点 s,则执行( )。 A.s→link=p→link;p→link=s; 第 1页共8页 B.p→link=s;s→link=q; C.p→link=s→link;s→link=p; D.q→link=s;s→link=p; 5.算法的计算量的大小称为计算的( )。 A.效率 复杂性 现实性 难度 一个算法应该是()。 .程序 .问题求解步骤的描述 C.要满足五个基本特性 D.A和C 7.从逻辑上可以把数据结构分为( )两大类。 A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 8.以下数据结构中,哪一个是线性结构?( ) A.广义表 二叉树 稀疏矩阵 第 2页共8页 串 二、多项选择题 1.以下说法正确的是( )。 二叉树的特点是每个结点至多只有两棵子树 二叉树的子树无左右之分 二叉树只能进行链式存储 树的结点包含一个数据元素及若干指向其子树的分支 2.在数组上能做的操作有( )。 插入 删除 取值操作 赋值操作 图的应用算法有()。 克鲁斯卡尔算法 哈弗曼算法 迪杰斯特拉算法 拓扑排序算法 计算机算法必须具备()等特性。 可行性、确定性 可行性、可移植性 输入、输出 第 3页共8页 有穷性 易读性 稳定性 三、填空题 1.一个算法的效率可分为 效率和 效率。 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后 移动 个元素。 3.栈只能在 插入和删除元素;对于队列只能在 插入和 删 除元素。 4.一棵具有257个结点的完全二叉树,它的深度为 。 四、判断题 链表的每个结点中都恰好包含一个指针。() 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。() 数和二叉树都是分支结构。() 优先队列是一种给每个元素增加了优先级的队列,它具有队列的基本特性。 ( ) 5. 数据元素是数据的最小单位。( ) 6. 记录是数据处理的最小单位。( ) 7. 数据的逻辑结构是指数据的各数据项之间的逻辑关系。 ( ) 第 4页共8页 五、简答题 能否讲二叉树是一种特殊的树?为什么? 在C语言中字符串可以用字符指针来表示。字符串的长度隐含在字符指针所指的字符数组中,通过特殊的字符‘’判定。写一个递归算法,以字符指针为参数,在屏幕上打印出它反转后得到的字符串。 算法与程序有什么区别? 试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。 什么是网络的最小生成树? 已知两个串为S1=“bccadcabcadf”,S2=”abc”,试求两个串的长度,并判断 S2串是否是S1串的子串;如果是,请指出S2在S1中的位置。 第 5页共8页 《算法与数据结构》习题 1答案 一、单项选择题 题号 1 2 3 4 5 6 7 8 答案 D C A B B B C D 二、多项选择题 题号 1 2 3 4 答案 AD CD ACD ACD 三、填空题 题号 答案 时间;空间 n-i+1 栈顶;队尾;队首 9 四、判断题 题号 1 2 3 4 5 6 7 答案 × × √ × × × × 五、简答题 第 6页共8页 答:不能。二叉树并不是树的特例。树和二叉树的定义及操作都是不同的, 周游算法也有很大的区别。二叉树可以与一般树林建立对应,它的提出可以为研究树提供一种简单而统一的范型。 答:voidprintRevString(char*s){ If(s[0]==‘’)return; /*空串*/ If(s[1]==‘’)putchar(s[0]); /*只有一个字符,直接打印 */ Else { PrintRevString(s+1); Putchar(s[0]); } } 3.答:算法与程序的关系十分密切,但并不等同。一般来说,一个程序并不需要 满足算法的有穷性等条件,例如操作系统的程序,只要整个系统不遭到破坏,操 作系统程序就永不结束。另外,程序是用机器可执行的语言书写的, 而算法通常 并没有这种限制。 答:DLR:ABDFJGKCE

文档评论(0)

151****0456 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档