国家开放大学数据结构(本)形考任务答案1-4

[复制链接]
查看: 26|回复: 0

24万

主题

24万

帖子

35万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
351973
发表于 2025-5-24 14:56:24 | 显示全部楼层 |阅读模式
国开电大数据结构(本)形考作业答案
形考任务
1
把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()。
答案

物理结构
下列说法中,不正确的是()。
答案

数据项可由若干个数据元素构成
一个存储结点存储一个()。
答案

数据元素
数据结构中,与所使用的计算机无关的是数据的()。
答案

逻辑结构
在线性表的顺序结构中,以下说法正确的是()。
答案

逻辑上相邻的元素在物理位置上也相邻
对链表
,
以下叙述中正确的是()。
答案

不能随机访问任一结点
下列的叙述中,不属于算法特性的是()。
答案

可读性
算法的时间复杂度与()有关。
答案

算法本身
设有一个长度为
n
的顺序表,要在第
i
个元素之前(也就是插入元素作为新表的第
i
个元素),插入一个元素,则移动元素个数为()。
答案

n-i+1
设有一个长度为
n
的顺序表,要删除第
i
个元素移动元素的个数为()。
答案

n-i
在一个单链表中,
p

q
分别指向表中两个相邻的结点,且
q
所指结点是
p
所指结点的直接后继,现要删除
q
所指结点,可用语句()。
答案

p->next=q->next
在一个单链表中
p
所指结点之后插入一个
s
所指的结点时,可执行()。
答案

s->next=p->next;p->next=s;
非空的单向循环链表的尾结点满足()(设头指针为
head
,指针
p
指向尾结点)。
答案

p->next==head
链表不具有的特点是()。
答案

可随机访问任一元素
带头结点的链表为空的判断条件是()(设头指针为
head
)。
答案

head->next==NULL
在一个长度为
n
的顺序表中为了删除第
5
个元素,由第
6
个元素开始从后到前依次移动了
15
个元素。则原顺序表的长度为()。
答案

20
有关线性表的正确说法是()。
答案

除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继
向一个有
127
个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动()个元素。
答案

63.5
一个顺序表第一个元素的存储地址是
90
,每个元素的长度为
2
,则第
6
个元素的地址是()。
答案

100
在一个不带头结点的单循环链表中,
p

q
分别指向表中第一个结点和尾结点,现要删除第一个结点,且
p

q
仍然分别指向新表中第一个结点和尾结点。可用的语句是
p=p->next;
和()。
答案

q->next=p
数据元素可以有一个或多个数据项组成。
答案


数据元素之间的抽象关系称为物理结构。
答案


数据的逻辑结构在计算机中的表示称为逻辑结构。
答案


数据的逻辑结构是与存储该结构的计算机相关的。
答案


数据结构中
,
元素之间存在多对多的关系称为树状结构。
答案


通常可以把一本含有不同章节的书的目录结构抽象成线性结构。
答案


通常可以把某城市中各公交站点间的线路图抽象成树型结构。
答案


设有一个不带头结点的单向循环链表,结点的指针域为
next
,指针
p
指向尾结点,现要使
p
指向第一个结点,可用语句
p=p->next;

答案


设有一个单向链表,结点的指针域为
next
,头指针为
head

p
指向尾结点,为了使该单向链表改为单向循环链表,可用语句
p->next=head

答案


设有一个单向循环链表,结点的指针域为
next
,头指针为
head
,指针
p
指向表中某结点,若逻辑表达式
p->next==head;
的结果为真,则
p
所指结点为尾结点。
答案


要在一个单向链表中
p
所指向的结点之后插入一个
s
所指向的新结点,若链表中结点的指针域为
next
,可执行
p->next=s;s->next=p->next
;的操作。
答案


要在一个单向链表中删除
p
所指向的结点,已知
q
指向
p
所指结点的直接前驱结点,若链表中结点的指针域为
next
,则可执行
q->next=p->next

答案


要在一个带头结点的单向循环链表中删除头结点,得到一个新的不带头结点的单向循环链表,若结点的指针域为
next
,头指针为
head
,尾指针为
p
,则可执行
head=head->next;p->next=head
;。
答案


设有一个单向循环链表,头指针为
head
,链表中结点的指针域为
next

p
指向尾结点的直接前驱结点,若要删除尾结点,得到一个新的单向循环链表,可执行操作
p->next=head
;。
答案


设线性表以不带头结点的单向链表存储,链表头指针为
head
,以下程序的功能是输出链表中各结点中的数据域
data,
完成程序中空格部分。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

回复

使用道具 举报

24万

主题

24万

帖子

35万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
351973
 楼主| 发表于 2025-5-24 14:56:24 | 显示全部楼层
defineNULL0
voidmain
彩蛋
{NODE*head,*p;
p=head;/*p
为工作指针
*/
do
{printf(“%d\n”
,p

>data
;
p=p

>next
;
}while
p!=NULL
;
设有一个头指针为
head
的不带头结点单向链表,
p

q
是指向链表中结点类型的指针变量,
p
指向链表中结点
a,
(设链表中没有结点的数据域与结点
a
的数据域相同)
,
写出相关语句
(1)
使该单向链表成为单向循环链表
(2)
插入结点
s,
使它成为
a
结点的直接前驱
q=p;x=p->data;
while
q

>next!=NULL

q=q->next;
q->next=head;
q=p;p=p->next;
while(p->data!=x)
{q=p;
p=p

>next
}
s->next=p;
q

>next=s
形考任务
2
若让元素
1

2

3
依次进栈,则出栈顺序不可能为()。
答案

3

1

2
一个队列的入队序列是
1

2

3

4
。则队列的输出序列是()。
答案

1

2

3

4
向顺序栈中压入新元素时,应当()。
答案

先移动栈顶指针,再存入元素
在一个栈顶指针为
top
的链栈中,将一个
p
指针所指的结点入栈,应执行()。
答案

p->next=top;top=p;
在一个栈顶指针为
top
的链栈中删除一个结点时,用
x
保存被删结点的值,则执行()。
答案

x=top->data;top=top->next;
判断一个顺序队列(最多元素为
m
)为空的条件是()。
答案

front==rear
判断一个循环队列为满的条件是()。
答案

(rear+1)%MaxSize==front
判断栈满(元素个数最多
n
个)的条件是()。
答案

top==n-1
设有一个
20
阶的对称矩阵
A
(第一个元素为
a1,1
),采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组
B
中(数组下标从
1
开始),则矩阵元素
a6,2
在一维数组
B
中的下标是()。
答案

17
在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将要输出的数据依次写入缓冲区中,而打印机则从缓冲区中取出数据打印,该缓冲区应该是一个()结构。
答案

队列
一个递归算法必须包括()。
答案

终止条件和递归部分
在一个链队中,假设
f

r
分别为队头和队尾指针,则删除一个结点的运算为()。
答案

f=f->next;
在一个链队中,假设
f

r
分别为队头和队尾指针,则插入
s
所指结点的运算为()。
答案

r->next=s;r=s;
数组
a
经初始化
chara[]=

English

;a[7]
中存放的是()。
答案

字符串的结束符
设主串为

ABcCDABcdEFaBc
”,以下模式串能与主串成功匹配的是()。
答案

Bcd
字符串
a1="AEIJING"

a2="AEI"

a3="AEFANG"

a4="AEFI"
中最大的是()。
答案

a1
两个字符串相等的条件是()。
答案

两串的长度相等,并且对应位置上的字符相同
一维数组
A
采用顺序存储结构,每个元素占用
6
个字节,第
6
个元素的存储地址为
100
,则该数组的首地址是()。
答案

70
一个非空广义表的表头()。
答案

可以是子表或原子
对稀疏矩阵进行压缩存储
,
可采用三元组表,一个
10

8
列的稀疏矩阵
A
,其相应的三元组表共有
6
个元素,矩阵
A
共有()个零元素。
答案

74
对稀疏矩阵进行压缩存储
,
可采用三元组表,一个
10

8
列的稀疏矩阵
A
共有
73
个零元素,
A
的右下角元素为
6
,其相应的三元组表中的第
7
个元素是()。
答案


10

8

6

对一个栈顶指针为
top
的链栈进行入栈操作,通过指针变量
p
生成入栈结点,并给该结点赋值
a
,则执行
:p=(structnode*)malloc(sizeof(structnode);p->data=a;
和()。
答案

p->next=top;top=p;
头指针为
head
的带头结点的单向链表为空的判定条件是()为真。
答案

head->next==NULL
设有一个对称矩阵
A
,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组
B
中(数组下标从
1
开始),
B
数组共有
55
个元素
,
则该矩阵是()阶的对称矩阵。
答案

10
数组
a
经初始化
chara[]=

English

;a[1]
中存放的是()。
答案

字符
n
二、判断题(每小题
2
分,
16
题,共
32
分)
设有一个链栈,栈顶指针为
hs
,现有一个
s
所指向的结点要入栈,则可执行操作。
hs=s

s->next=hs;
答案


设有一个非空的链栈,栈顶指针为
hs
,要进行出栈操作,用
x
保存出栈结点的值,栈结点的指针域为
next
,则可执行
hs=hs->next;x=hs->data;
答案


有一个链栈,栈顶指针为
h
,现有一个
p
所指向的结点要入栈,则可执行操作
p->next=h;

h=p

答案


设有一个非空的链栈,栈顶指针为
hs
,要进行出栈操作,用
x
保存出栈结点的值,栈结点的指针域为
next
,数据域为
data
,则可执行
hs=hs->next;x=hs->data;
答案


在一个链队中,
f

r
分别为队头和队尾指针,队结点的指针域为
next
,则插入所指结点的操作为
r->next=s

r=s

答案


在一个链队中,
f

r
分别为队头和队尾指针,队结点的指针域为
next

s
指向一个要入队的结点,则入队操作为
r=s

r->next=s

答案


在一个不带头结点的非空链队中,
f

r
分别为队头和队尾指针,队结点的数据域为
data
,指针域为
next
,若要进行出队操作,并用变量
x
存放出队元素的数据值,则相关操作为
x=f->data;f=f->next;
答案


对稀疏矩阵进行压缩存储
,
可采用三元组表,一个
6

7
列的稀疏矩阵
A
相应的三元组表共有
8
个元素
,
则矩阵
A
共有
34
个零元素。
答案


循环队列的最大存储空间为
MaxSize
,队头指针为
f
,队尾指针为
r
,当(
r+1

%MaxSize=f
时表明队列已满。
答案


循环队列的队头指针为
f
,队尾指针为
r
,当
r==f
时表明队列已满。
答案


空串的长度是
0
;空格串的长度是空格字符的个数。
答案


对稀疏矩阵进行压缩存储,矩阵中每个非零元素对应的三元组包括该元素的行下标、列下标、和非零元素值三项信息。
答案


循环队列的引入,目的是为了克服假上溢。
答案


设有
n
阶对称矩阵
A
,用一维数组
s
压缩存储
A
的下三角元素,
s
的下标从零开始,元素
s[26]
相应于
A
中的元素为
a7,5

答案


循环队列的最大存储空间为
MaxSize=6
,采用少用一个元素空间以有效
需要更多科目答案请联系我们

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

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

本版积分规则

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