2018 数据结构(郑州轻工业大学)1002762014 最新满分章节测试答案

2024年11月14日 分类:免费网课答案 作者:网课帮手

本答案对应课程为:点我自动跳转查看
本课程起止时间为:2018-03-07到2018-07-15
本篇答案更新状态:已完结

1 绪论 绪论

1、 问题:计算机算法指的是
选项:
A:计算方法
B:排序方法
C:解决问题的步骤序列
D:调度方法
答案: 【解决问题的步骤序列

2、 问题:计算机算法必须具备( ) 这三个特性
选项:
A:可行性、可移植性、可扩充性
B:可行性、确定性、有穷性
C:确定性、有穷性、稳定性
D:易读性、稳定性、安全性
答案: 【可行性、确定性、有穷性

3、 问题:一个算法应该是( )
选项:
A:程序
B:问题求解步骤的描述
C:要满足五个基本特性
D:A和C
答案: 【问题求解步骤的描述

4、 问题:下面关于算法说法错误的是( )
选项:
A:算法最终必须由计算机程序实现
B:为解决某问题的算法同为该问题编写的程序含义是相同的
C:算法的可行性是指指令不能有二义性
D:以上几个都是错误的
答案: 【以上几个都是错误的

5、 问题:从逻辑上可以把数据结构分为( )两大类。
选项:
A:动态结构、静态结构
B:顺序结构、链式结构
C:线性结构、非线性结构
D:初等结构、构造型结构
答案: 【线性结构、非线性结构

6、 问题:数据的逻辑结构是指数据的各数据项之间的逻辑关系
选项:
A:正确
B:错误
答案: 【错误

7、 问题:算法的优劣与算法描述语言无关,但与所用计算机有关。
选项:
A:正确
B:错误
答案: 【错误

8、 问题:健壮的算法不会因非法的输入数据而出现莫名其妙的状态。
选项:
A:正确
B:错误
答案: 【正确

9、 问题:算法可以用不同的语言描述,如果用C 语言或其他高级语言来描述,则算法实际上就是程序了。
选项:
A:正确
B:错误
答案: 【错误

10、 问题:程序一定是算法。
选项:
A:正确
B:错误
答案: 【错误

11、 问题:数据的物理结构是指数据在计算机内的实际存储形式。
选项:
A:正确
B:错误
答案: 【正确

12、 问题:数据结构的抽象操作的定义与具体实现有关。
选项:
A:正确
B:错误
答案: 【错误

13、 问题:数据结构的基本操作的设置的最重要的准则是,实现应用程序与存储结构的独立。
选项:
A:正确
B:错误
答案: 【正确

14、 问题:对于给定的n个元素,可以构造出的逻辑结构有___,_____四种。
答案: 【集合 线性结构 树形结构 图状结构或网状结构

15、 问题:抽象数据类型的定义仅取决于它的一组_,而与无关,即不论其内部结构如何变化,只要它的__不变,都不影响其外部使用。
答案: 【逻辑特性 在计算机内部如何表示和实现 数学特性

16、 问题:数据结构中评价算法的两个重要指标是 。
答案: 【时间复杂度和空间复杂度

17、 问题:在有n个选手参加的单循环赛中,总共将进行______场比赛。
答案: 【n(n-1)/2

18、 问题:一个算法具有5个特性: 、 、 ,有零个或多个输入、有一个或多个输出。
答案: 【有穷性 确定性 可行性

【作业】2 线性表 顺序表的基本操作

1、 问题:如果使用以下顺序结构表示线性表,请给出该顺序表的类型定义struct SqList{ ___ //数组分量,元素类型为int __ //线性表长度};
评分规则: 【 能理解并正确使用图示中的data、MaxSize、size来声明结构类型

2、 问题:/第二周顺序表作业:请先阅读main()函数,了解程序功能,然后实现如下函数,并整个程序调试成功。int ListInsert_sq(SqList &L, int i, ElemType e);int ListDeleteByIndex_sq(SqList &L, int i, ElemType &e);int ListDeleteByValue_sq(SqList &L, ElemType e);void ListTraverse(SqList L);///程序中多处用到了C++中的引用参数传递,请使用C++编译器#include #include #define MAXSIZE 100typedef int ElemType;typedef struct{ ElemType elem[MAXSIZE+1]; //约定:从elem[1]开始存储元素,elem[0]放弃不用,这样元素在线性表中的位序,与数组下标一致 int length;} SqList;//返回顺序表L中第1个与e相等的数据元素位序int LocatElem_sq(SqList &L, ElemType e);//在第k个元素前插入元素x,若操作成功返回1, 若操作失败(如k非法、数组空间已满),则返回0int ListInsert_sq(SqList &L, int k, ElemType e);//按指定位置删除元素:删除线性表L中第k个元素,用e返回其值,L长度减1。若k非法,则返回0,否则返回1int ListDeleteByIndex_sq(SqList &L, int k, ElemType &e);//按值删除元素:在顺序表L中删除第一个值为e的元素。若删除成功返回1,若e不存在,则返回0int ListDeleteByValue_sq(SqList &L, ElemType e);//遍历顺序表,输出所有元素void ListTraverse(SqList L);int main(){ SqList L; //顺序表 ElemType e; //存储一个元素值 int i, index; int slt; //存储用户的选择 printf(“输入n和n个整数:”); scanf(“%d”, &L.length); for(i = 1; i <= L.length; i++) //下标从1开始 scanf(“%d”, &L.elem[i]); while(1) { printf(“1.按值查找元素”); printf(“2.按指定序号删除元素”); printf(“3.按指定值删除元素”); printf(“4.在指定位置插入指定元素”); printf(“5.输出所有元素”); printf(“0.退出”); printf(“请输入你的选择:”); scanf(“%d”, &slt); if( slt == 0) break; switch(slt) { case 1: printf(“输入待查找元素:”); scanf(“%d”, &e); index = LocatElem_sq(L, e); //LocatElem()将返回顺序表L中第1个与e相等的元素下标 if(index > 0) printf(“找到,下标为%d”, index); else printf(“找不到”); break; case 2: //按指定位置删除元素:读入一个序号i,删除线性表L中第i个元素,用e返回其值,L长度减1 printf(“请输入待删除元素的序号i:”); scanf(“%d”, &i); if( ListDeleteByIndex_sq(L, i, e)) { printf(“删除成功,被删除的元素是%d”, e); printf(“剩余元素为:”); ListTraverse(L); //遍历顺序表,输出所有元素 } else printf(“删除失败”); break; case 3: //按值删除元素:读入一个整数e,在顺序表L中删除第一个值为e的元素,删除成功返回1,若e不存在,则返回0 printf(“请输入待删除元素的值e:”); scanf(“%d”, &e); if( ListDeleteByValue_sq(L, e)) { printf(“删除成功”); printf(“剩余元素为:”); ListTraverse(L); //遍历顺序表,输出所有元素 } else printf(“删除失败”); break; case 4: //在指定位置上插入新元素:读入一个整数e,和一个插入位置i,在线性表L中第i个元素之前插入新元素e, L长度加1 printf(“请输入待插入元素:”); scanf(“%d”, &e); printf(“请输入新元素位置序号:”); scanf(“%d”, &i); if( ListInsert_sq(L, i, e)) { printf(“操作成功,更新后的序列如下:”); ListTraverse(L); //遍历顺序表,输出所有元素 } else printf(“操作失败”); break; case 5: ListTraverse(L); //遍历顺序表,输出所有元素 break; } //结束switch }//结束while return 0;}//返回顺序表L中第1个与e相等的数据元素位序int LocatElem_sq(SqList &L, ElemType e) { int i; for(i = 1; i <= L.length; i++) //下标从1开始 if(e == L.elem[i]) //若找到,返回下标1~L.length return i; return 0; //若查找失败,返回0 }
评分规则: 【 程序能正常运行,能对各种输入均有正确反应。

2 线性表 线性表

1、 问题:下述哪一条是顺序存储结构的优点?( )
选项:
A:存储密度大
B:插入运算方便
C:删除运算方便
D:可方便地用于各种逻辑结构的存储表示
答案: 【存储密度大

2、 问题:下面关于线性表的叙述中,错误的是哪一个?( )
选项:
A:线性表采用顺序存储,必须占用一片连续的存储单元。
B:线性表采用顺序存储,便于进行插入和删除操作。
C:线性表采用链式存储,不必占用一片连续的存储单元。
D:线性表采用链式存储,便于插入和删除操作。
答案: 【线性表采用顺序存储,便于进行插入和删除操作。

3、 问题:线性表是具有n个( )的有限序列(n>0)。
选项:
A:表元素
B:字符
C:数据元素
D:数据项
答案: 【数据元素

4、 问题:若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
选项:
A:顺序表
B:双向链表
C:带头结点的双循环链表
D:单循环链表
答案: 【顺序表

5、 问题:某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。
选项:
A:单链表
B:仅有头指针的单循环链表
C:双向链表
D:仅有尾指针的单循环链表
答案: 【仅有尾指针的单循环链表

6、 问题:设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
选项:
A:单链表
B:单循环链表
C:带尾指针的单循环链表

本门课程剩余章节答案为付费内容
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦
请输入手机号或商家订单号
打不开请联系客服QQ 2356025045 商家订单号在哪里?点此了解

商家订单号查看步骤

打开支付宝
方法一:我的 > 账单 > 账单详情 > 更多>复制商家订单号
方法二:我的 > 账单 >搜索关键字【网课小帮手】
> 账单详情 > 更多>复制商家订单号
方法三:联系客服QQ 2356025045
微信支付
我 > 支付 > 钱包 > 账单 > 账单详情

继续阅读