yuyue-edu 发表于 2025-6-30 14:36:32

深圳开放大学数据结构(本)作业与答案

深圳开放大学数据结构(本)作业与答案数据结构(本)学校:深圳开放大学平台:国家开放大学题目如下:1. 把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为( )。A. 逻辑结构B. 物理结构C. 算法的具体实现D. 给相关变量分配存储单元答案:物理结构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. 设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为( )。A. n-i+1B. n-iC. n-i-1D. i答案:n-i+110. 设有一个长度为n的顺序表,要删除第i个元素移动元素的个数为()。A. n-i+1B. n-iC. n-i-1D. i答案:n-i11. 在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句( )。A. p=q->nextB. p->next=qC. p->next=q->nextD. q->next=NULL答案:p->next=q->next12. 在一个单链表中p所指结点之后插入一个s所指的结点时,可执行()。A. p->next= s; s->next= p->nextB. p->next=s->next;C. p=s->nextD. s->next=p->next; p->next=s;答案:s->next=p->next; p->next=s;13. 非空的单向循环链表的尾结点满足( )(设头指针为head,指针p指向尾结点)。A. p->next==headB. p==NULLC. p->next==NULLD. p== head答案:p->next==head14. 链表不具有的特点是( )。A. 可随机访问任一元素B. 插入删除不需要移动元素C. 不必事先估计存储空间D. 逻辑上相邻的元素在物理位置上不一定相邻答案:可随机访问任一元素15. 带头结点的链表为空的判断条件是( )(设头指针为head)。A. head ==NULLB. head->next==NULLC. head->next==headD. head!=NULL答案:head->next==NULL16. 在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始从后到前依次移动了15个元素。则原顺序表的长度为( )。A. 21B. 20C. 19D. 25答案:2017. 有关线性表的正确说法是( )。A. 每个元素都有一个直接前驱和一个直接后继B. 线性表至少要求一个元素C. 表中的元素必须按由小到大或由大到下排序D. 除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继答案:除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继18. 向一个有127个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动( )个元素。A. 8B. 7C. 63D. 63.5答案:63.519. 一个顺序表第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的地址是( )。A. 98B. 100C. 102D. 106答案:10020. 在一个不带头结点的单循环链表中,p、q分别指向表中第一个结点和尾结点,现要删除第一个结点,且p、q仍然分别指向新表中第一个结点和尾结点。可用的语句是p=p->next;和()。A.p=q->nextB.p->next=qC. q=pD.q->next=p答案:q->next=p21. 数据元素可以有一个或多个数据项组成。答案:正确22. 数据元素之间的抽象关系称为物理结构。答案:错误23. 数据的逻辑结构在计算机中的表示称为逻辑结构。答案:错误24. 数据的逻辑结构是与存储该结构的计算机相关的。答案:错误25. 数据结构中,元素之间存在多对多的关系称为树状结构。答案:错误26. 通常可以把一本含有不同章节的书的目录结构抽象成线性结构。答案:错误27. 通常可以把某城市中各公交站点间的线路图抽象成树型结构。答案:错误28. 设有一个不带头结点的单向循环链表,结点的指针域为next,指针p指向尾结点,现要使p指向第一个结点,可用语句p=p->next;。答案:正确29. 设有一个单向链表,结点的指针域为next,头指针为head,p指向尾结点,为了使该单向链表改为单向循环链表,可用语句p->next=head 。答案:正确30. 设有一个单向循环链表,结点的指针域为next,头指针为head,指针p指向表中某结点,若逻辑表达式p->next==head;的结果为真,则p所指结点为尾结点。答案:正确31. 要在一个单向链表中p所指向的结点之后插入一个s所指向的新结点,若链表中结点的指针域为next,可执行 p->next=s;s->next= p->next;的操作。答案:错误32. 要在一个单向链表中删除p所指向的结点,已知q指向p所指结点的直接前驱结点,若链表中结点的指针域为next,则可执行q->next= p->next;答案:正确33. 要在一个带头结点的单向循环链表中删除头结点,得到一个新的不带头结点的单向循环链表,若结点的指针域为next,头指针为head,尾指针为p,则可执行head=head->next; p->next=head;。答案:正确34. 设有一个单向循环链表,头指针为head,链表中结点的指针域为next,p指向尾结点的直接前驱结点,若要删除尾结点,得到一个新的单向循环链表,可执行操作p->next=head;。答案:正确35. 对线性表进行二分查找时,要求线性表必须( )。A. 以顺序存储方式B. 以链接存储方式C. 以顺序存储方式,且数据元素有序D. 以链接存储方式,且数据元素有序答案:以顺序存储方式,且数据元素有序36. 采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为( )。A. nB. n/2C. (n+1)/2D. (n-1)/2答案:(n+1)/237. 有一个长度为10的有序表,按折半查找对该表进行查找,在等概率情况下查找成功的平均比较次数为( )。A. 29/10B. 31/10C. 26/10D. 29/9答案:29/1038. 已知一个有序表为{11,22,33,44,55,66,77,88,99},则顺序查找元素55需要比较( )次。A. 3B. 4C. 5D. 6答案:539. 有数据{53,30,37,12,45,24,96},从空二叉树开始逐个插入数据来形成二叉排序树,若希望高度最小,应该选择的序列是()。A. 45,24,53,12,37,96,30B. 37,24,12,30,53,45,96C. 12,24,30,37,45,53,96D. 30,24,12,37,45,96,53答案:37,24,12,30,53,45,9640. 对于顺序存储的有序表{5,12,20,26,37,42,46,50,64},若采用折半查找,则查找元素26的比较次数是( )。A. 3B. 6C. 4D. 5答案:441. 在所有的排序方法中,关键字比较的次数与记录初始排列秩序无关的是( )。A. 冒泡排序B. 希尔排序C. 直接选择排序D. 直接插入排序答案:直接选择排序42. 从未排序序列中依次取出元素与已经排好序的序列中的元素作比较。将其放入已排序序列的正确的位置上,此方法称为( )。A. 插入排序B. 选择排序C. 交换排序D. 归并排序答案:插入排序43. 依次将每两个相邻的有序表合并成一个有序表的排序方法称为( )。A. 插入排序B. 交换排序C. 选择排序D. 归并排序答案:归并排序44. 当两个元素出现逆序的时候就交换位置,这种排序方法称为( )。A. 插入排序B. 交换排序C. 选择排序D. 归并排序答案:交换排序45. 每次把待排序的区间划分为左、右两个子区间,其中左区间中记录的关键字均小于等于基准记录的关键字,右区间中记录的关键字均大于等于基准记录的关键字,这种排序称为()。A. 插入排序B. 快速排序C. 堆排序D. 归并排序答案:快速排序46. 一组记录的关键字序列为(46,20,30,79,56,38,40,84,90,110),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为()。A. 40,20,30,38,46,56,79,84,90,110B. 20,30,40,38,46,79,56,84,90,100C. 30,20,40,38,46,84,56,79,90,100D. 20,30 38,40,46,56,79,84,90,100答案:40,20,30,38,46,56,79,84,90,11047. 在有序表{10,14,34,43,47,64,75,80,90}中,用折半查找法查找值80时,经( )次比较后查找成功。A. 4B. 2C. 3D. 5答案:348. 对序列(49,38,65,97,76,13,47,50)采用直接插入排序法进行排序,要把第七个元素47插入到已排序中,为寻找插入的合适位置需要进行( )次元素间的比较。A. 3B. 4C. 5D. 6答案:549. 排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始为空)的一端的方法,称为( )排序。A. 归并B. 插入C. 选择D. 快速答案:选择50. 一组记录的关键字序列为(26,59,36,18,20,25),利用堆排序的方法建立的初始小根堆为( )。A. 26,18,59,20,36,25B. 18,20,25,59,26,36C. 18,20,36,59,26,25D. 26,59,36,18,20,25答案:18,20,25,59,26,3651. 一组记录的关键字序列为(25,48,16,35,79,82,23,40,36,72),其中,含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并后的结果为( )。A. 16,25,35,48,23,40,79,82,36,72B. 16,25,35,48,79,82,23,36,40,72C. 16,25,48,35,79,82,23,36,40,72D. 16,25,35,48,79,23,36,40,82,72答案:16,25,35,48,23,40,79,82,36,7252. 已知10个数据元素为(54,28,16,34,73,62,95,60,26,43),对该数列从小到大排序,经过一趟冒泡排序后的序列为()。A. 16,28,34,54,73,62,60,26,43,95B. 28,16,34,54,62,73,60,26,43,95C. 28,16,34,54,62,60,73,26,43,95D. 16,28,34,54,62,60,73,26,43,95答案:28,16,34,54,62,73,60,26,43,9553. 一组记录的关键字序列为(46,79,56,38,40,84),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为( )。A. 40,38,46,79,56,84B. 40,38,46,56,79,84C. 40,38,46,84,56,79D. 38,40,46,56,79,84答案:40,38,46,56,79,8454. 一组记录的关键字序列为(80,57,41,39,46,47),利用堆排序(堆顶元素是最小元素)的方法建立的初始堆为()。A. 39,46,41,57,80,47B. 39,47,46,80,41,57C. 41,39,46,47,57,80D. 39,80,46,47,41,57答案:39,46,41,57,80,4755. 假定一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()。A. 15B. 16C. 17D. 47答案:1656. 二叉树第k层上最多有( )个结点。A. 2kB. 2k-1C. 2k-1D. 2k-1答案:2k-157. 将含有150个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点的编号为1,则编号为69的结点的双亲结点的编号为( )。A. 33B. 34C. 35D. 36答案:3458. 如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,则该树称为( )。A. 哈夫曼树B. 平衡二叉树C. 二叉树D. 完全二叉树答案:哈夫曼树59. 在一棵度具有5层的满二叉树中结点总数为( )。A. 31B. 32C. 33D. 16答案:3160. 一棵完全二叉树共有6层,且第6层上有6个结点,该树共有( )个结点。A. 38B. 72C. 31D. 37答案:3761. 利用3、6、8、12这四个值作为叶子结点的权,生成一棵哈夫曼树,该树中所有叶子结点中的最长带权路径长度为( )。A. 18B. 16C. 12D. 30答案:1862. 在一棵树中,( )没有前驱结点。A. 分支结点B. 叶结点C. 树根结点D. 空结点答案:树根结点63. 设一棵采用链式存储的二叉树,除叶结点外每个结点度数都为2,该树结点中共有20个指针域为空,则该树有( )个叶结点。A. 21B. 22C. 9D. 10答案:1064. 在一个图G中,所有顶点的度数之和等于所有边数之和的( )倍。A. 1/2B. 1C. 2D. 4答案:265. 邻接表是图的一种( )。A. 顺序存储结构B. 链式存储结构C. 索引存储结构D. 散列存储结构答案:链式存储结构66. 图的深度优先遍历算法类似于二叉树的( )遍历。A. 先序B. 中序C. 后序D. 层次答案:先序67. 已知如下图所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的一种顶点序列为( )。A. abecdfB. aecbdfC. aebcfdD. aedfcb答案:aecbdf68. 图状结构中数据元素的位置之间存在( )的关系。A. 一对一B. 一对多C. 多对多D. 每一个元素都有一个且只有一个直接前驱和一个直接后继答案:多对多69. 在一棵二叉树中,若编号为i的结点存在右孩子,则右孩子的顺序编号为()。A. 2iB. 2i-1C. 2i+1D. 2i+2答案:2i+170. 一棵具有16个结点的完全二叉树,共有( )层。(设根结点在第一层)A. 7B. 5C. 6D. 4答案:571. 对二叉排序树进行( )遍历,可以使遍历所得到的序列是有序序列。A. 按层次B. 后序C. 中序D. 前序答案:中序72. 已知一个图的边数为m,则该图的所有顶点的度数之和为()。A. 2mB. mC. 2m+1D. m/2答案:2m73. 一棵二叉树的叶结点(终端结点)数为5,单分支结点数为2,该树共有11个结点。答案:正确74. 一棵有14个结点的完全二叉树,则它的最高层上有7个结点。答案:正确75. 一棵二叉树有6个叶结点,则该树总共有11个结点。答案:错误76. 根据搜索方法的不同,图的遍历有.先序;中序;后序三种方法。答案:错误77. 对于一棵具有n个结点的二叉树,其相应的链式存储结构中共有n-1个指针域空。答案:错误78. 设一棵完全二叉树,其最高层上最右边的叶结点的编号为奇数,该叶结点的双亲结点的编号为10,该完全二叉树一共有21个结点。答案:正确79. 设一棵完全二叉树,其最高层上最右边的叶结点的编号为偶数,该叶结点的双亲结点的编号为9,该完全二叉树一共有19个结点。答案:错误80. 按照二叉树的递归定义,对二叉树遍历的常用算法有深度优先遍历和深度优先遍两种方法。答案:错误81. 一棵有8个权重值构造的哈夫曼数,共有17个结点。答案:错误82. 一棵有7个叶结点的二叉树,其1度结点数的个数为2,则该树共有15个结点。答案:正确
页: [1]
查看完整版本: 深圳开放大学数据结构(本)作业与答案