01_绪论

1、数据结构二元组(D, R)分别代表什么?

        D代表数据元素的又穷集合,R代表D上关系的集合

2、数据结构包括哪两种结构?

        数据的逻辑结构,数据的存储结构

3、数据的逻辑结构和数据的存储结构之间的关系是什么?

        数据的逻辑结构面向所解决的问题,反应了数据内部的构成方式;而数据的存储结构面向计算机,目标是将数据及其逻辑关系存储到计算机的存储器中。一般情况下,一种逻辑结构可以采用多种存储结构来存储,而采用不同的存储结构,其对数据的处理效率往往不同

4、数据的逻辑结构可否独立数据的存储结构考虑,反之,数据的存储结构可否独立于数据的逻辑结构考虑?

        数据的逻辑结构可以独立于数据的存储结构,这时因为数据的逻辑结构设计师在数据的分析阶段进行的,二数据的存储结构设计则是在数据的设计阶段进行的。反之,数据的存储结构不能独立于数据的逻辑结构,这是因为数据的存储结构是数据的逻辑结构在计算机存储中的映像。

5、具有某种逻辑结构数据在不同的存储结构下对其实施某种操作,其操作的时间效率可能不同,这种说法对吗?举例说明

        正确。例如在长度为n的线性表中进行插入和删除操作,当线性表位顺序存储结构时,平局移动将近一半的数据元素的位置,操作时间复杂度位O(n),而在链式存储结构下则不需要移动数据元素的位置,操作时间复杂度为O(1),与线性表的长度无关。

6、算法的基本特性之一由算法的外部提供 n>=0个有限操作作为算法的输入。这里的0个输入表示什么意思?

        0个输入指算法的输入不是通过键盘或者其他设备输入的,而是有算法的内部确定初始条件,或者通过算法内部诸如复制语句等方式给出所需要的变量的初值,被认为是一种特殊的输入,因此,在某些特殊情况下,一个算法可以没有输入。

7、“一个算法是正确的”是什么意思?

        指当输入一组合理的数据时,能够在有限的运行时间内得出正确的结果,对于不合理的输入数据,能够给出相应的警告提示信息。

8、衡量一个算法质量优劣的基本标准是什么?

        通常包括5个方面:1 算法的正确性,2 算法的的易读性,3 算法的健壮性, 4 算法的可移植性,5 算法的时空效率。

9、影响一个算法的时间效率的主要因素有哪些?

        主要因素包括两个方面。1、解决的问题规模大小。2、算法执行“基本操作”的次数

10、已知在同一运行环境下实现相同功能的两个算法A和B,其中算法A的时间复杂度为O(2^n),算法B的时间复杂度位O(n^2),仅就时间复杂度而言,哪个更好?

        分别对算法A和B时间复杂度取对数,得到nlog2和2logn,

        所以n<4时A的时间复杂度不大于B的时间复杂度

        n=4时,两个算法复杂度相同

        n>4时,B算法好于A算法

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值