数据结构的基本概念习题

1、可以用(D )定义一个完整的数据结构。
A、数据元素
B、数据对象
C、数据关系
D、抽象数据类型

解析:
抽象数据类型(ADT)描述了数据的逻辑结构和抽象运算,通常用(数据对象,数据关系,基本操作集)这样的三元组来表示,从而构成了一个完整的数据结构定义。
数据项:一个元素由若干数据项组成
数据元素:组成数据对象的基本单位
数据对象:性质相同的数据元素的集合(类似于数组一般)

2、以下数据结构中,(A)是非线性数据结构。
A、树
B、字符串
C、队列
D、栈

解析:
线性结构是一个有序数据元素的集合。
线性结构的特点是数据元素之间存在一对一的线性关系。
常见的线性结构有:线性表,栈,队列,双队列,数组,串。
常见的非线性结构有;二维数组,多维数组,广义表,树(二叉树等),图。

3、以下属于逻辑结构的是(C)。
A、顺序表
B、哈希表
C、有序表
D、单链表

解析:
顺序表、哈希表和单链表既描述了逻辑结构,还描述了存储结构和数据的运算。
有序表是指关键字有序的线性表,可以链式存储也可以顺序存储,仅描述了元素之间的逻辑关系,故它属于逻辑结构。

4、以下与数据的存储结构无关的术语是(D)。
A、循环队列
B、链表
C、哈希表
D、栈

解析:
数据的存储结构:顺序存储、链式存储、索引存储和散列存储。
A循环队列本身是用数据表(存储)表示的队列(逻辑),是一个数据结构;B、C链表和哈希表是存储结构;D栈是逻辑结构。

5、以下关于数据结构的说法中,正确的是(A)
A、数据的逻辑结构独立于其存储结构
B、数据的存储结构独立于其逻辑结构
C、数据的逻辑结构唯一决定了其存储结构
D、数据结构仅由其逻辑结构和存储结构决定

解析:
A数据的逻辑结构是以面向实际问题的角度出发的,只采用抽象表达方式,独立于存储结构。B数据的存储结构是逻辑结构在计算机上的映射,它不能独立与逻辑结构而存在。C满二叉树既可以用顺序存储方式存储,也可以用链式存储结构存储。D数据结构包括三个要素(逻辑结构、存储结构、数据运算),缺一不可。
逻辑结构有四种基本类型:集合结构、线性结构、树状结构和网络结构。
两种基本的存储结构:顺序存储结构和链式存储结构。

6、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储(C)。
A、数据的操作方法
B、数据元素的类型
C、数据元素之间的关系
D、数据的存取方法

解析:
抽象数据类型(ADT)={数据对象,数据关系,基本操作集)
数据=数据对象+数据关系
数据结构=数据对象+数据关系+基本操作集
A存储数据时无需存储操作方法,存储数据结构时才需如此;B数据元素的类型隐含于数据元素之中;D数据的存取方法是A项操作方法的一部分。

7、链式存储设计时,结点内的存储单元地址(A)。
A、一定连续
B、一定不连续
C、不一定连续
D、部分连续,部分不连续

解析:
链式存储设计时,各个不同结点的存储空间可以不连续,但是结点内的存储单元地址则必须连续。

8、对于两种不同的数据结构,逻辑结构或物理结构一定不相同吗?
解析:不一定相同。
数据结构三要素:逻辑结构、存储结构、数据运算。
因此,两种不同的数据结构,逻辑结构和物理结构可以不同(正常情况下),也可以相同(数据运算不同,逻辑结构和物理结构不同也被称为两种数据结构)
例子:二叉树与二叉排序树,两种不同的数据结构。
二者均可以使用二叉树的逻辑结构与物理结构。
但是建立树、插入结点、删除结点和查找结点等数据运算是不同的。

9、试举一例,说明对相同的逻辑结构,同一种运算在不同的存储方式下实现,其运算效率不同。
解析:
线性表既可以用顺序存储方式实现,也可以用链式存储方式实现。
在顺序存储方式下,在线性表中插入和删除元素,平均要移动近一半的元素,时间复杂度为0(n);
在链式存储方式下,插入和删除的时间复杂度都是0(1)。

  • 17
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值