2022电大国家开放大学网上形考任务-数据结构(本)非免费(非答案)

[复制链接]
查看: 306|回复: 6

5万

主题

8万

帖子

18万

积分

论坛元老

Rank: 8Rank: 8

积分
189561
发表于 2022-3-17 00:05:05 | 显示全部楼层 |阅读模式
来源 www.ybaotk.com

电大数据结构(本)形考作业 1-阶段性学习测验 1 答案
"目 1:把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为(     )。
: 逻辑结构
; 算法的具体实现
; 给相关变量分配存储单元
; 物理结构"
"题目 2:下列说法中,不正确的是(     )。
: 数据元素是数据的基本单位
; 数据项可由若干个数据元素构成
; 数据项是数据中不可分割的最小可标识单位
; 数据可有若干个数据元素构成"
"题目 3:一个存储结点存储一个(     )。
: 数据类型
; 数据元素
; 数据结构
; 数据项"
"题目 4:数据结构中,与所使用的计算机雅关的是数据的(     )。
: 物理结构
; 逻辑结构
; 存储结构
; 物理和存储结构"
"题目 5:在线性表的顺序结构中,以下说法正确的是(           )。
: 数据元素是不能随机访问的
; 逻辑上相邻的元素在物理位置上也相邻
; 进行数据元素的插入、删除效率较高
; 逻辑上相邻的元素在物理位置上不一定相邻"
"题目 6:对链表, 以下叙述中正确的是(         )。
: 插入删除元素的操作一定要要移动结点
; 不能随机访问任一结点
; 可以通过下标对链表进行直接访问
; 结点占用的存储空间是连续的"
"题目 7:下列的叙述中,不属于算法特性的是(          )。
: 输入性
; 可读性
; 可行性
; 有穷性"
"题目 8:算法的时间复杂度与(     )有关。
: 数据结构
; 计算机的操作系统
; 所使用的计算机
; 算法本身"
"题目 9:设有一个长度为 n 的顺序表,要在第 i 个元素之前(也就是插入元素作为新表的
第 i 个元素),插入一个元素,则移动元素个数为(     )。
: n-i+1
; n-i-1
; i
; n-i"
"题目 10:设有一个长度为 n 的顺序表,要删除第 i 个元素移动元素的个数为(     )。
: n-i-1
; n-i
; i
; n-i+1"
"题目 11:在一个单链表中,p、q 分别指向表中两个相邻的结点,且 q 所指结点是 p 所指
结点的直接后继,现要删除 q 所指结点,可用语句(     )。
: p->next=q->next
; q->next=NULL
; p->next=q
; p=q->next"
"题目 12:在一个单链表中 p 所指结点之后插入一个 s 所指的结点时,可执行(     )。
: s->next=p->next; p->next=s;
; p->next=s->next;
; p->next= s; s->next= p->next
; p=s->next"
"题目 13:非空的单向循环链表的尾结点满足(     )(设头指针为 head,指针 p 指向
尾结点)。
: p== head
; p->next==NULL
; p->next==head
; p==NULL"
"题目 14:链表不具有的特点是(     )。
: 插入删除不需要移动元素
; 不必事先估计存储空间
; 逻辑上相邻的元素在物理位置上不一定相邻
; 可随机访问任一元素"
"题目 15:带头结点的链表为空的判断条件是(     )(设头指针为 head)。
: head->next==head
; head->next==NULL
; head!=NULL
; head ==NULL"
"题目 16:在一个长度为 n 的顺序表中为了删除第 5 个元素,由第 6 个元素开始从后到前
依次移动了 15 个元素。则原顺序表的长度为(     )。
: 19
; 21
; 25
; 20"
"题目 17:有关线性表的正确说法是(     )。
: 除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继
; 每个元素都有一个直接前驱和一个直接后继
; 表中的元素必须按由小到大或由大到下排序
; 线性表至少要求一个元素"
"题目 18:向一个有 127 个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平
均要移动(     )个元素。
: 63
; 8
; 7
; 63.5"
"题目 19:一个顺序表第一个元素的存储地址是 90,每个元素的长度为 2,则第 6 个元素
的地址是(     )。
: 98
; 100
; 106
; 102"
"题目 20:      在一个不带头结点的单循环链表中,p、q 分别指向表中第一个结点和尾
结点,现要删除第一个结点,且 p、q 仍然分别指向新表中第一个结点和尾结点。可用的
语句是 p=p->next;和(         )。
:    q=p
; q->next=p
; p=q->next
; p->next=q"
题目 21:数据元素可以有一个或多个数据项组成。
题目 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:      设线性表以不带头结点的单向链表存储,链表头指针为 head,以下程序
的功能是输出链表中各结点中的数据域 data,完成程序中空格部分。





上一篇:2022电大国家开放大学网上形考任务-资产评估非免费(非答案)
下一篇:2022电大国家开放大学网上形考任务-中国古代文学b2非免费(非答案)
回复

使用道具 举报

0

主题

2万

帖子

4万

积分

论坛元老

Rank: 8Rank: 8

积分
40028
发表于 2022-3-17 00:06:01 | 显示全部楼层
define NULL 0
void main( )
{ NODE    *head ,*p ;
p=head;      /*p 为工作指针*/
do
{printf(“%d\n”, [[1]];
[[2]];
}while[[3]];
}
; [[1]] -> {p->data / p=p->next / p!=NULL}"
"题目 36:      设有一个头指针为 head 的不带头结点单向链表,p、q 是指向链表中结
点类型的指针变量,p 指向链表中结点 a, (设链表中没有结点的数据域与结点 a 的数据
域相同),写出相关语句
(1)使该单向链表成为单向循环链表
(2)插入结点 s,使它成为 a 结点的直接前驱
q=p; x=p->data;
while [[3]])q=q->next;
q->next=head;
q=p; p=p->next;
while(p->data!=x)
{ q=p;
[[1]]
}
s->next=p;
[[2]]
; [[1]] -> {p=p->next / q->next=s / q->next!=NULL}"


电大数据结构(本)形考作业 2-阶段性学习测验 2 答案
"题目 1:若让元素 1,2,3 依次进栈,则出栈顺序不可能为(     )。
: 3,2,1
; 3,1,2
; 1,3,2
; 2,1,3"
"题目 2:一个队列的入队序列是 1,2,3,4。则队列的输出序列是(     )。
: 1,2,3,4
; 1,4,3,2
; 4,3,2,1
; 3,2,4,1"
"题目 3:向顺序栈中压入新元素时,应当(     )。
: 先移动栈顶指针,再存入元素
; 先后次序雅关紧要
; 先存入元素,再移动栈顶指针
; 同时进行"
"题目 4:在一个栈顶指针为 top 的链栈中,将一个 p 指针所指的结点入栈,应执行
(     )。
: p->next=top->next;top->next=p;
; p->next=top;top=p;
; top->next=p;
; p->next=top->next;top=top->next;"
"题目 5:在一个栈顶指针为 top 的链栈中删除一个结点时,用 x 保存被删结点的值,则
执行(     )。
: x=top;top=top->next;
; x=top->data;
; x=top->data;top=top->next;
; top=top->next;x=top->data;"
"题目 6:判断一个顺序队列(最多元素为 m)为空的条件是(     )。
: rear==m-1
; front==rear+1
; rear=m
; front==rear"
"题目 7:判断一个循环队列为满的条件是(     )。
: front==rear+1
; rear=MaxSize
; (rear+1)%MaxSize==front
; rear%MaxSize= =front"
"题目 8:判断栈满(元素个数最多 n 个)的条件是(     )。
: top==n-1
; top!=0
; top=-1
; top==0"
"题目 9:设有一个 20 阶的对称矩阵 A(第一个元素为 a1,1),采用压缩存储的方式,将
其下三角部分以行序为主序存储到一维数组 B 中(数组下标从 1 开始), 则矩阵元素
a6,2 在一维数组 B 中的下标是(     )。
: 21
; 17
; 23
; 28"
"题目 10:在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲
区,主机将要输出的数据依次写入缓冲区中,而打印机则从缓冲区中取出数据打印,该缓
冲区应该是一个(     )结构。
: 线性表
; 队列
; 数组
; 堆栈"
"题目 11:一个递归算法必须包括(     )。
: 迭代部分
; 终止条件和迭代部分
; 递归部分
; 终止条件和递归部分"
"题目 12:在一个链队中,假设 f 和 r 分别为队头和队尾指针,则删除一个结点的运算为
(     )。
: r=r->next;
; f=f->next;
; f=r->next;
; r=f->next;"
"题目 13:在一个链队中,假设 f 和 r 分别为队头和队尾指针,则插入 s 所指结点的运算
为(     )。
: f->next=s;f=s;
; r->next=s;r=s;
; s->next=f;f=s;
; s->next=r;r=s;"
"题目 14:数组 a 经初始化 char a[ ]=“English”;a[7]中存放的是(     )。
: 字符串的结束符
; 变量 h
; "h"
; 字符 h"
"题目 15:设主串为“ABcCDABcdEFaBc”,以下模式串能与主串成功匹配的是(     )。
: Bcd
; Abc
; BCd
; ABC"
"题目 16:字符串 a1="AEIJING",a2="AEI",a3="AEFANG",a4="AEFI"中最大的是
(     )。
: a2
; a1
; a4
; a3"
"题目 17:两个字符串相等的条件是(     )。
: 两串的长度相等,并且两串包含的字符相同
; 两串的长度相等,并且对应位置上的字符相同
; 两串包含的字符相同
; 两串的长度相等"
"题目 18:一维数组 A 采用顺序存储结构,每个元素占用 6 个字节,第 6 个元素的存储地
址为 100,则该数组的首地址是(     )。
: 28
; 64
; 90
; 70"
"题目 19:一个非空广义表的表头(     )。
: 只能是原子
; 不可能是原子
; 可以是子表或原子
; 只能是子表"
"题目 20:对稀疏矩阵进行压缩存储,可采用三元组表,一个 10 行 8 列的稀疏矩阵 A,其
相应的三元组表共有 6 个元素,矩阵 A 共有(     )个零元素。
: 10
; 72
; 74
; 8"
"题目 21:对稀疏矩阵进行压缩存储,可采用三元组表,一个 10 行 8 列的稀疏矩阵 A 共有
73 个零元素,A 的右下角元素为 6,其相应的三元组表中的第 7 个元素是(     )。
: (10,8,7)
; (7,8,10)
; (10,8,6)
; (7,10,8)"
"题目 22:对一个栈顶指针为 top 的链栈进行入栈操作,通过指针变量 p 生成入栈结点,
并给该 结点赋值 a,则执行: p=(struct node *)malloc(sizeof(struct node);p-
>data=a;和(     )。
: p->next=top;p=top;
; p->next=top;top=p;
; top->next=p;p=top;
; top=top->next;p=top;"
"题目 23:头指针为 head 的带头结点的单向链表为空的判定条件是(     )为真。
: head->next!=NULL
; head->next==NULL
;    head==NULL
; head->next!=NULL"
"题目 24:设有一个对称矩阵 A,采用压缩存储的方式,将其下三角部分以行序为主序存
储到一维数组 B 中(数组下标从 1 开始),B 数组共有 55 个元素,则该矩阵是(     )阶
的对称矩阵。
: 5
; 15
; 20
; 10"
"题目 25:数组 a 经初始化 char a[ ]=“English”;a[1]中存放的是(     )。
: "E"
; "n"
; 字符 n
; 字符 E"
"题目 26:      设有一个链栈,栈顶指针为 hs,现有一个 s 所指向的结点要入栈,则可
执行操作。hs=s;
s-> next=hs;"
"题目 27:      设有一个非空的链栈,栈顶指针为 hs,要进行出栈操作,用 x 保存出栈
结点的值,栈
结点的指针域为 next,则可执行 hs=hs->next ;x=hs->data;"
"题目 28:      有一个链栈,栈顶指针为 h,现有一个 p 所指向的结点要入栈,则可执
行操作 p->next=h;
和 h=p;"
题目 29:      设有一个非空的链栈,栈顶指针为 hs,要进行出栈操作,用 x 保存出栈
结点的值,栈结点的指针域为 next,数据域为 data,则可执行 hs= hs->next; x= hs-
>data;
题目 30:      在一个链队中,f 和 r 分别为队头和队尾指针,队结点的指针域为 next,
则插入所指结点的操作为 r->next=s;r=s;
题目 31:      在一个链队中,f 和 r 分别为队头和队尾指针,队结点的指针域为 next,
s 指向一个要入 队的结点,则入队操作为 r=s;r->next=s;
题目 32:      在一个不带头结点的非空链队中,f 和 r 分别为队头和队尾指针,队结点
的数据域为 data,指针域为 next,若要进行出队操作,并用变量 x 存放出队元素的数据
值,则相关操作为 x=f->data; f=f->next;
题目 33:对稀疏矩阵进行压缩存储,可采用三元组表,一个 6 行 7 列的稀疏矩阵 A 相应的
三元组表共有 8 个元素,则矩阵 A 共有 34 个零元素。
题目 34:      循环队列的最大存储空间为 MaxSize,队头指针为 f,队尾指针为 r,当
(r+1)%MaxSize=f 时表明队列已满。
题目 35:循环队列的队头指针为 f,队尾指针为 r,当 r= =f 时表明队列已满。
题目 36:空串的长度是 0;空格串的长度是空格字符的个数。
题目 37:      对稀疏矩阵进行压缩存储,矩阵中每个非零元素对应的三元组包括该元素
的行下标、列下标、和非零元素值三项信息。
题目 38:循环队列的引入,目的是为了克服假上溢。
"题目 39:
设有 n 阶对称矩阵 A,用一维数组 s 压缩存储 A 的下三角元素,s 的下标从零开始,元素
s[26]相应于 A 中的元素为 a 7,5。"
题目 40:      循环队列的最大存储空间为 MaxSize=6,采用少用一个元素空间以有效的
判断栈空或栈满,若队头指针 front=4,当队尾指针 rear=3 时队满。
题目 41:      循环队列的最大存储空间为 MaxSize=6,采用少用一个元素空间以有效的
判断栈空或栈满,若队头指针 front=4,队尾指针 rear=3 时,队列中共有 5 个元素。
"题目 42:以下函数为链栈的进栈操作,x 是要进栈的结点的数据域,top 为栈顶指针
struct    node
{     ElemType    data;
struct    node    *next;
};
struct node *top ;
void Push(ElemType x)
{
struct node *p;
p=(struct node*)malloc    [[1]];
p->data=x;
[[3]];
[[2]];
}
; [[1]] -> {A.sizeof (struct node) / top=p / p->next=top}"
"题目 43:           以下函数为链队列的入队操作,x 为要入队的结点的数据域的值,
front、rear 分别链队列的队头、队尾指针
struct    node
{     ElemType    data;
struct    node    *next;
};
struct    node    *front,*rear;
void InQueue(ElemType x)
{
struct node *p;
p= (struct node*) malloc    [[3]];
p->data=x;
p->next=NULL;
[[1]];
rear= [[2]];
}
; [[1]] -> {rear->next=p / p / (sizeof (struct node)}"


电大数据结构(本)形考作业 3-阶段性学习测验 3 答案
"题目 1:假定一棵二叉树中,双分支结点数为 15,单分支结点数为 30,则叶子结点数为
(     )。
: 16
; 15
; 17
; 47"
"题目 2:二叉树第 k 层上最多有(     )个结点。
: 2k-1
; 2k
; 2k-1
; 2k-1"
"题目 3:将含有 150 个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进
行编号,根结点的编号为 1,则编号为 69 的结点的双亲结点的编号为(     )。
: 33
; 34
; 35
; 36"
"题目 4:如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,
则该树称为(     )。
: 二叉树
; 平衡二叉树
; 哈夫曼树
; 完全二叉树"
"题目 5:在一棵度具有 5 层的满二叉树中结点总数为(     )。
: 33
; 32
; 16
; 31"
"题目 6:一棵完全二叉树共有 6 层,且第 6 层上有 6 个结点,该树共有(     )个结点。
: 38
; 37
; 72
; 31"
"题目 7:利用 3、6、8、12 这四个值作为叶子结点的权,生成一棵哈夫曼树,该树中所有
叶子结点中的最长带权路径长度为(     )。
: 18
; 16
; 30
; 12"
"题目 8:在一棵树中,(     )没有前驱结点。
: 空结点
; 树根结点
; 叶结点
; 分支结点"
"题目 9:设一棵采用链式存储的二叉树,除叶结点外每个结点度数都为 2,该树结点中共
有 20 个指针域为空,则该树有(          )个叶结点。
: 21
; 22
; 10
; 9"
"题目 10:在一个图 G 中,所有顶点的度数之和等于所有边数之和的(     )倍。
: 2
; 4
; 1
; 1/2"
"题目 11:邻接表是图的一种(     )。
: 链式存储结构
; 索引存储结构
; 顺序存储结构
; 散列存储结构"
"题目 12:图的深度优先遍历算法类似于二叉树的(     )遍历。
: 后序
; 先序
; 层次
; 中序"
"题目 13:已知下图所示的一个图,若从顶点 V1 出发,按深度优先搜索法进行遍历,则可
能得到的一种顶点序列为(     )。
: V1V2V4V8V3V5V6V7
; V1V3V6V7V2V4V5V8
; V1V2V4V5V8V3V6V7
; V1V2V4V8V5V3V6V7"
"题目 14:已知如下图所示的一个图,若从顶点 a 出发,按广度优先搜索法进行遍历,则
可能得到的一种顶点序列为(      )。
: aedfcb
; aebcfd
; abecdf
; aecbdf"
"题目 15:图状结构中数据元素的位置之间存在(           )的关系。
: 多对多
; 一对一
; 一对多
; 每一个元素都有一个且只有一个直接前驱和一个直接后继"
"题目 16:在一棵二叉树中,若编号为 i 的结点存在右孩子,则右孩子的顺序编号为
(      )。
: 2i
; 2i+2
; 2i+1
; 2i-1"
"题目 17:一棵具有 16 个结点的完全二叉树,共有(         )层。(设根结点在第一层)
: 4
; 5
; 6
; 7"
"题目 18:对二叉排序树进行(          )遍历,可以使遍历所得到的序列是有序序列。
: 后序
; 按层次
; 中序
; 前序"
"题目 19:已知一个图的边数为 m,则该图的所有顶点的度数之和为(         )。
: 2m
; m/2
; m
; 2m+1"
题目 20:一棵二叉树的叶结点(终端结点)数为 5,单分支结点数为 2,该树共有 11 个结
点。
题目 21:一棵有 14 个结点的完全二叉树,则它的最高层上有 7 个结点。
题目 22:一棵二叉树有 6 个叶结点,则该树总共有 11 个结点。
题目 23:根据搜索方法的不同,图的遍历有.先序;中序;后序三种方法。
题目 24:对于一棵具有 n 个结点的二叉树,其相应的链式存储结构中共有 n-1 个指针域空。
题目 25:      设一棵完全二叉树,其最高层上最右边的叶结点的编号为奇数,该叶结点
的双亲结点的编号为 10,该完全二叉树一共有 21 个结点。
题目 26:      设一棵完全二叉树,其最高层上最右边的叶结点的编号为偶数,该叶结点
的双亲结点的编号为 9,该完全二叉树一共有 19 个结点。
题目 27:按照二叉树的递归定义,对二叉树遍历的常用算法有深度优先遍历和深度优先遍
两种方法。
题目 28:一棵有 8 个权重值构造的哈夫曼数,共有 17 个结点。
题目 29:一棵有 7 个叶结点的二叉树,其 1 度结点数的个数为 2,则该树共有 15 个结点。
"题目 30:      以下程序是后序遍历二叉树的递归算法的程序,完成程序中空格部分
(树结构中左、右指针域分别为 left 和 right,数据域 data 为字符型,BT 指向根结点)。
完成程序中空格部分。
void
Inorder (struct BTreeNode *BT)
{
if(    BT!=NULL)
{
Inorder(BT->left);
[[1]]
[[3]]
}
利用上述程序对左图进行后序遍历,结果是[[2]];
; [[1]] -> {Inorder(BT-> right ) / d,e,b,f,c,a / printf(“%c”,BT->data)}"
"题目 31:      以下程序是中序遍历二叉树的递归算法的程序,完成程序中空格部分
(树结构中左、右指针域分别为 left 和 right,数据域 data 为字符型,BT 指向根结点)。
void Inorder (struct BTreeNode *BT)
{
if(BT!=NULL){
Inorder(BT->left);}
[[2]];
[[3]];
}
利用上述程序对右图进行中序遍历,结果是[[1]];
; [[1]] -> {d,b,e,a,f,c / printf(“%c”,BT->data) / Inorder(BT->right)}"
"题目 32:(1)以 3,4,5,8,9,作为叶结点的权,构造一棵哈夫曼树。该树的带权路
径长度为 {A; B; C; D}.
A,64           B.65           C. 62          D. 66
(2)权重为 3 的叶结点的哈夫曼编码为{A; B; C; D}。
A.010          B.0101          C.000          D.0111"
"题目 33:(1)以 2,3,4,7,8,9 作为叶结点的权,构造一棵哈夫曼树,该树的带权
路径长度为{A; B; C; D}
A,66           B. 80          C. 62           D. 87
(2)权重值为 4 的叶结点的哈夫曼编码为{A; B; C; D}。
A.0001         B. 1110      C.001      D. 110"
"题目 34:(1)已知某二叉树的后序遍历序列是 debca,中序遍历序列是 dbeac,该二叉
树的根结点是{A; B; C; D}
A. e           B. c           C. b           D. a
(2)先序遍历序列是{A; B; C; D}。
A. e,b,c,d,a                B. c,a,b,,d,e              C.
a,b,d,e,c           D. a.c,b,d,e,"
"题目 35:(1)已知某二叉树的先序遍历序列是 aecdb,中序遍历序列是 eadcb,该二叉
树的根结点是{A; B; C; D};
A. e                B. c              C. b              D. a
(2)后序遍历序列为{A; B; C; D}。
A. e,d,b,c,a              B. c,a,b,,d,e          C. a,b,d,e,c          D.
a.c,b,d,e,"
"题目 36:(1)以给定权重值 5,6,17,18,25,30,为叶结点,建立一棵哈夫曼树,该
树的中序遍历序列为{A; B; C; D}
A. 5,11,28,6,17,58,30,101,18,43,25
B. 5,11,6,28,17,58,30,101,18,43,25
C. 5,11,6,28,101,58,30,17,18,43,25
D. 5,11,6,28,17,58,30,101,18,25,43
(2)权重值为 6 的叶结点的哈夫曼为{A; B; C; D}.
A. 1001          B. 011          C.001          D.0001"


电大数据结构(本)形考作业 4-阶段性学习测验 4 答案
: 以链接存储方式
; 以链接存储方式,且数据元素有序
; 以顺序存储方式,且数据元素有序
; 以顺序存储方式"
"题目 2:采用顺序查找方法查找长度为 n 的线性表时,每个元素的平均查找长度为
(     )。
: (n-1)/2
; (n+1)/2
; n/2
; n"
"题目 3:有一个长度为 10 的有序表,按折半查找对该表进行查找,在等概率情况下查找
成功的平均比较次数为(     )。
: 29/10
; 26/10
; 31/10
; 29/9"
"题目 4:已知一个有序表为{11,22,33,44,55,66,77,88,99},则顺序查找元素 55 需要比
较(     )次。
: 5
; 6
; 4
; 3"
"题目 5:有数据{53,30,37,12,45,24,96},从空二叉树开始逐个插入数据来形成二叉排序
树,若希望高度最小,应该选择的序列是(     )。
: 30,24,12,37,45,96,53
; 45,24,53,12,37,96,30
; 12,24,30,37,45,53,96
; 37,24,12,30,53,45,96"
"题目 6: 对于顺序存储的有序表{5,12,20,26,37,42,46,50,64},若采用折半查找,则查
找元素 26 的比较次数是(     )。
: 6
; 4
; 5
; 3"
"题目 7:在所有的排序方法中,关键字比较的次数与记录初始排列秩序雅关的是
(     )。
: 直接选择排序
; 希尔排序
; 冒泡排序
; 直接插入排序"
"题目 8:从未排序序列中依次取出元素与已经排好序的序列中的元素作比较。将其放入已
排序序列的正确的位置上,此方法称为(     )。
: 选择排序
; 插入排序
; 交换排序
; 归并排序"
"题目 9:依次将每两个相邻的有序表合并成一个有序表的排序方法称为(     )。
: 选择排序
; 交换排序
; 插入排序
; 归并排序"
"题目 10:当两个元素出现逆序的时候就交换位置,这种排序方法称为(     )。
: 交换排序
; 选择排序
; 归并排序
; 插入排序"
"题目 11:每次把待排序的区间划分为左、右两个子区间,其中左区间中记录的关键字均
小于等于基准记录的关键字,右区间中记录的关键字均大于等于基准记录的关键字,这种
排序称为(     )。
: 归并排序
; 快速排序
; 插入排序
; 堆排序"
"题目 12: 一组记录的关键字序列为(46,20,30,79,56,38,40,84,90,110),利用快
速排序,以第一个关键字为分割元素,经过一次划分后结果为(    )。
: 20,30,40,38,46,79,56,84,90,100
; 30,20,40,38,46,84,56,79,90,100
; 40,20,30,38,46,56,79,84,90,110
; 20,30 38,40,46,56,79,84,90,100"
"题目 13:在有序表{10,14,34,43,47,64,75,80,90}中,用折半查找法查找值 80
时,经(         )次比较后查找成功。
: 3
; 5
; 4
; 2"
"题目 14:对序列(49,38,65,97,76,13,47,50)采用直接插入排序法进行排序,
要把第七个元素 47 插入到已排序中,为寻找插入的合适位置需要进行(     )次元素间
的比较。
: 5
; 6
; 4
; 3"
"题目 15:排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始为
空)的一端的方法,称为(     )排序。
: 插入
; 归并
; 快速
; 选择"
"题目 16:一组记录的关键字序列为(26,59,36,18,20,25),利用堆排序的方法建
立的初始小根堆为(     )。
: 18,20,36,59,26,25
; 18,20,25,59,26,36
; 26,18,59,20,36,25
; 26,59,36,18,20,25"
"题目 17:一组记录的关键字序列为(25,48,16,35,79,82,23,40,36,72),其
中,含有 5 个长度为 2 的有序表,按归并排序的方法对该序列进行一趟归并后的结果为
(     )。
: 16,25,35,48,23,40,79,82,36,72
; 16,25,35,48,79,82,23,36,40,72
; 16,25,48,35,79,82,23,36,40,72
; 16,25,35,48,79,23,36,40,82,72"
"题目 18:已知 10 个数据元素为(54,28,16,34,73,62,95,60,26,43),对该数
列从小到大排序,经过一趟冒泡排序后的序列为(     )。
: 28,16,34,54,62,73,60,26,43,95
; 16,28,34,54,73,62,60,26,43,95
; 16,28,34,54,62,60,73,26,43,95
; 28,16,34,54,62,60,73,26,43,95"
"题目 19:一组记录的关键字序列为(46,79,56,38,40,84),利用快速排序,以第
一个关键字为分割元素,经过一次划分后结果为(     )。
: 40,38,46,79,56,84
; 40,38,46,56,79,84
; 40,38,46,84,56,79
; 38,40,46,56,79,84"
"题目 20:一组记录的关键字序列为(80,57,41,39,46,47),利用堆排序(堆顶元素是最
小元素)的方法建立的初始堆为(          )。
: 39,46,41,57,80,47
; 39,47,46,80,41,57
; 39,80,46,47,41,57
; 41,39,46,47,57,80"
"题目 21:      以下函数是二叉排序树的查找算法,若二叉树为空,则返回根结点的指
针,否则,返回值是指向树结点的结构指针 p(查找成功 p 指向查到的树结点,不成功 p
指向为 NULL)完成程序中的空格
typedef    struct    Bnode
{     int    key;
struct     Bnode *left;
struct     Bnode *right;
} Bnode;
Bnode *BSearch(Bnode    *bt, int k)
/* bt 用于接收二叉排序树的根结点的指针,k 用以接收要查找的关键字*/
{     Bnode *p;
if(bt== [[2]])
return (bt);
p=bt;
while(p->key!= [[5]])
{    if(kkey)
[[1]];
else [[3]];
if(p==NULL) break;
}
return([[4]];
}
; [[1]] -> {p=p->left / NULL / p=p->right / p / k}"
"题目 22:      以下程序是折半插入排序的算法
void binsort (NODE a[ ],int n)
{     int x,i,j,s,k,m;
for (i=2;i<=[[4]];i++)
s=1;
j=i-1;
while (s<=j)
{    m=[[1]]
if( x<a[m].key)                             [[2]]                        else
                             [[5]]                    }                   for
( k=i-1;k>=j+1;k- -)
[[3]]=a[k];
a[j+1]=a[0];
}
}
; [[1]] -> {(s+j)/2 / j=m-1 / a[k+1] / n / s=m+1}"
"题目 23:     (1)设查找表为(1,10,11,14,23,27,29,55,68) ,画出对上述查找表进
行折半查找所对应的判定树,为了成功查找到元素 14,需要依次与元素{A; B; C; D}进行
比较。
A. 23,10,1,14           B.23,29,27,14          C.
23,10,11,14         D.23,29,55,14
(2)在等概率条件下,成功查找的平均比较次数为{A; B; C; D}。
A.24/9                    B. 25
/9                   C.3                        D.2.5
"
"题目 24:     (1)一组记录的关键字序列为(47,80,57,39,41,46),利用堆排
序的方法建立的初始堆为{A; B; C; D}(堆顶元素是最小元素,采用树的形式建堆)。
A. 39,41,57,80,47,46              B.39,41,46,80,47,57
C. 39,47,46,80,41,57              D.39,41,57,80,46,47
(2)输出堆顶元素后,调整后的堆为{A; B; C; D}。
A.41,47,46,80,57                        B.41,57,46,80,47
C.41,57,80,47,46                         D.41,80,46,47,57           "
"题目 25:     (1)对关键字序列(56,51,71,54,46,106),利用快速排序,以第一个关键
字为分割元素,经过一次划分后结果为{A; B; C; D};
A. 46,51,56,54,71,106                        B. 56,51,54,46,71,106
C. 46,51,54,56,71,106                         D. 56,51,46,54,71,106
(2)一组记录的关键字序列为( 60,47,80,57, 39,41,46,30),利用归并排序的
方法,经过(2,2)归并的结果序列为{A; B; C; D}。.
A.(30, 57, 60, 80,47,39,41,46    )              B. (47, 60, 57, 80,
30,39,41,46    )
C.(41, 57, 60, 80, 30,39,47,46    )           D. (47, 57, 60, 80,
30,39,41,46    )"
"题目 26:      (1)对关键字序列(36,69,46,28,30,74)采用快速排序,以第一个关键
字为分割元素,经过一次划分后的结果序列为{A; B; C; D}
A.30,28,46,36,69,74               B.28,30,36,46,69,74
C. 28,30,46,36,69,74               D. 30,28,36,46,69,74
(2)用冒泡法对上述序列排序,经两趟冒泡的结果序列为{A; B; C; D}。
A. 36,28,30,46,69,74                             B. 36,46,28,20,69,74
.C. 38,36,30,46,69,74                             D.28,36,,30,46,69,74"
"题目 27:     (1)一组记录的关键字序列为{45,40,65,43,35,95}写出利用快速
排序的方法,以第一个记录为基准得到的一趟划分的结果为{A; B; C; D};
A. 35 40 65 45 35 95
B. 35 40 65 43 45 95
C. 35 40 43 45 65 95
D. 35 40 45 43 65 95
(2)对上述序列 利用直接插入排序,逐次插入过程中,共进行了{A; B; C; D}次元素间
的比较。
A. 8         B. 11         C.9         D.10"


来源 www.ybaotk.com
回复

使用道具 举报

0

主题

3481

帖子

5222

积分

论坛元老

Rank: 8Rank: 8

积分
5222
发表于 2022-3-17 03:25:23 | 显示全部楼层
奥鹏福建师范大学电大形考作业有答案吗?
回复

使用道具 举报

0

主题

3623

帖子

5435

积分

论坛元老

Rank: 8Rank: 8

积分
5435
发表于 2022-3-17 04:24:22 | 显示全部楼层
222223
回复

使用道具 举报

0

主题

3万

帖子

4万

积分

论坛元老

Rank: 8Rank: 8

积分
45849
发表于 2022-3-17 15:07:42 | 显示全部楼层
奥鹏南开大学作业有答案吗?
回复

使用道具 举报

0

主题

3590

帖子

5389

积分

论坛元老

Rank: 8Rank: 8

积分
5389
发表于 2022-3-18 21:18:43 | 显示全部楼层
四川电大形考作业可以做吗?
回复

使用道具 举报

0

主题

3551

帖子

5327

积分

论坛元老

Rank: 8Rank: 8

积分
5327
发表于 2022-3-18 22:34:36 | 显示全部楼层
奥鹏吉林大学作业有答案吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐
|网站地图|网站地图