设数据结构B=(D,R),其中D={a,b,c,d,e,f}

接上面的题目:R={(a,b),(b,c),(c,d),(d,e)(e,f),(f,a)},该数据结构是什么?A.线性结构B.循环队列C.循环链表D.非线性结构想问一下大... 接上面的题目:R={(a,b),(b,c),(c,d),(d,e)(e,f),(f,a)},该数据结构是什么?A.线性结构B.循环队列C.循环链表D.非线性结构

想问一下大佬这道题的答案是循环链表吗?循环链表是线性的,但是这个答案的链表是非线性的?想问一下循环链表到底是怎么定义的,循环链表有根结点吗?
展开
 我来答
乐观的爱数
推荐于2018-07-09 · 知道合伙人文学行家
乐观的爱数
知道合伙人文学行家
采纳数:1753 获赞数:22692
县级优秀教师。

向TA提问 私信TA
展开全部

数据的逻辑结构有两个要素:一是数据元素的集合,通常记为 D ;二是 D 上的关系,它反映了 D 中各数据元素之间的前后件关系,通常记为 R 。即一个数据结构可以表示成 B= ( D,R )。其中 B 表示数据结构。为了反映 D 中各数据元素之间的前后件关系,一般用二元组来表示。例如,假设 a 与 b 是 D 中的两个数据,则二元组( a,b )表示 a 是 b 的前件, b 是 a 的后件。 如果一个非空的数据结构满足下列两个条件:①有且只有一个根结点;②每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构。如果一个数据结构不是线性结构,则称之为非线性结构。 本题数据结构中没有根结点,因此它是非线性结构。故本题答案为 A 选项。

追问
想问一下循环链表和这个题目的图有什么不一样吗?循环链表的尾结点指针指向头结点,那循环链表为什么也叫线性结构?
追答
所谓循环链表就是尾结点与头结点相连的链表,整个链表形成一个环。而对于循环链表的插入与删除运算,基本上与单链表相同,只是在判断链表是否结束有所不同。下面的代码操作实现了两个循环单链表的合并。且核心代码不多,主要是分别找到循环单链表的尾结点再进行后续操作。
百度网友2ea1bef
2018-10-09
知道答主
回答量:1
采纳率:0%
帮助的人:792
展开全部
循环链表的表头结点是根结点,表尾结点是叶子节点,表尾结点虽然有指针指向表头结点,但它俩不是前后件关系,而题中的(a,b)(f,a)是前后件的表达形式,这与指针不同,所以题中不符合只有一个根结点的条件,所以是非线性结构
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1830092l_
2018-07-08 · TA获得超过193个赞
知道小有建树答主
回答量:198
采纳率:50%
帮助的人:35.5万
展开全部
数据结构的逻辑结构只有线性结构和非线性结构两种,其中非线性结构,包括树形和图形。题中关系为圆角括号也就是无向的,多对多的关系,即图形。非线性结构。
更多追问追答
追问
好的谢谢,还有我还想问循环链表为什么是线性结构?线性结构不是说必须要有一个根结点吗?但是循环链表的尾结点指针指向头结点不就和题目的结构一样了吗?这点我想的不是很明白
追答
线性结构就是结点间一对一的关系。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式