国家开放大学大作业答案

国开电大数据结构(本)形考作业任务答案1-4

本文包含:

电大数据结构(本)形考作业1答案
电大数据结构(本)形考作业2答案
电大数据结构(本)形考作业3答案
电大数据结构(本)形考作业4答案

------------------------

形考任务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,完成程序中空格部分。

#defineNULL0

voidmain彩蛋

{NODE*head,*p;

p=head;/*p为工作指针*/

do

{printf(“%d\n”,p>data;

p=p>next;

}whilep!=NULL;

设有一个头指针为head的不带头结点单向链表,p、q是指向链表中结点类型的指针变量,p指向链表中结点a,(设链表中没有结点的数据域与结点a的数据域相同),写出相关语句

(1)使该单向链表成为单向循环链表

(2)插入结点s,使它成为a结点的直接前驱

q=p;x=p->data;

whileq>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个)的条件是()。

此内容查看价格为5答案币立即购买
隐藏(剩余)内容购买后可查看, 常见问题」或「点此联系我们
如果不显示购买按钮,请复制本页网址换其他浏览器打开
2

评论0

没有账号?注册  忘记密码?

社交账号快速登录