您的当前位置:首页正文

《数据结构》习题集:第1章 绪论(第1次更新2012-2)

2021-06-15 来源:步旅网
第1章 绪论

一、 选择题

1. 数据结构被形式定义为(D,S),其中D是( )的有限集合,S是D上的( )有限集合。【*,★,?】

A、算法 B、数据元素 C、数据操作 D、逻辑关系 E、操作 F、映象 G、存储 H、关系

2. 数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) 的学科。【*,?】

(1)A、操作对象 B、计算方法 C、逻辑存储 D、数据映象

(2)A、结构 B、关系 C、运算 D、算法

3. 算法分析的目的是( ),算法分析的二个主要方面是( )。【*】

A、给出数据结构的合理性 B、研究算法中输入输出的关系

C、空间复杂性和时间复杂性 D、分析算法的效率以求改进

E、正确性和简明性 F、分析算法的易懂性和文档性

4. 在数据结构中,从逻辑上可以把数据结构分成( )。【*】

A、动态和静态结构 B、紧凑接和非紧凑结构

)和运算数据结构课后练习题 第1章 绪论

C、线性与非线性结构 D、内部结构和外部结构

5. 计算机算法指的是( ),它必具备输入、输出和( )5 个特性。【*】

A、计算方法 B、排序方法 C、解决问题的有限运算序列

D、可行性、可移植性和可扩充性 E、可行性、确定性和有穷性

6. 线性表的顺序存储结构是一种( )的存储结构,线性表的链式存储结构是一种( A、随机存取 B、顺序存取 C、索引存取 D、散列存取

7. 算法的时间复杂度取决于( )。【*】

A、问题的规模 B、待处理数据的初态 C、问题的规模和待处理数据的初态

8. 线性表若采用链表存储结构时,要求内存中可用存储单元的地址( )。【*,★】A、必须是连续的 B、部分地址必须是连续的

C、一定是不连续的 D、连续不连续都可以

9. 在以下的叙述中,正确的是( )。【***,★】

A、线性表的顺序存储结构优于链式存储结构

B、二维数组是它的每个数据元素为一个线性表的线性表

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

。【**,★,?】1/12

C、栈的操作方式是先进先出

D、队列的操作方式是先进后出

10. 根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式。以下解释错误的是 ( )。【*】

A、集合中任何两个结点之间都有逻辑关系但组织形式松散

B、线性结构中结点按逻辑关系依次排列形成一条\"锁链\"

C、树形结构具有分支、层次特性,其形态有点像自然界中的树

D、图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接

11. 以下说法正确的是( )。【*,★】

A、数据元素是数据的最小单位

B、数据项是数据的基本单位

C、数据结构是带有结构的各数据项的集合

D、数据结构是带有结构的数据元素的集合

数据结构课后练习题 第1章 绪论

二、 填空题

1. 数据逻辑结构包括( 集合 )、( 线性 )、( 树型 )、( 图型 )四种类型,树型和图型结构合称( 非线性 )。【*】

2. 对于给定的n 个元素,可以构造出的逻辑结构有( 集合 )、( 线性 )、(树型 )和( 图形结构 )四种。【*】

3. 算法的五个重要特性是( 有穷性 )、 确定性 )、( 可行性 )、( 输入 )、( 输出 )。【*】

4. 评价算法的性能从利用计算机资源角度看主要从( 时间复杂度 . 空间复杂度 )方面进行分析。【*】

5. 线性结构中元素之间存在( 一对一)关系,树型结构中元素之间存在(一对多 )关系,图型结构中元素之间存在( 多对多 )关系。【*】

6. 下面程序段的时间复杂度是( O(n) )。【*,★】

i=s=0;

while(s7. 下面程序段的时间复杂度是( O(m*n) )。【**】

s=0;

for(I=0;I3/12

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

for(j=0;js+=a[i][j];

8. 所谓数据的逻辑结构指的是数据元素之间的 __逻辑关系_____。【*】

9. 数据结构是相互之间存在一种或多种特定关系的数据元素的集合,它包括三方面的内容_数据的逻辑结构、数据的存储结构、对数据施加的操作_______。【*】

10. 在线性结构中,开始结点_没有____直接前驱结点,其余每个结点有且只有__一个__个直接前驱结点。【*,★】

11. 在树形结构中,根结点只有_一个_____,根结点无前驱,其余每个结点有且只有__一个____直接前驱结点;叶子结点没有____后继__结点,其余每个结点的后继结点可以__任意个___。【*,★】

12. 在图形结构中,每个结点的前驱结点和后继结点可以有_任意个______。【*,★】

13. 存储结构是逻辑结构的______物理____实现。【*】

14. 从数据结构的观点看,通常所说的\"数据\"应分成三个不同的层次,即____数据______、_____数据元素_____和_________数据项_。【*,★】

15. 根据需要,数据元素又被称为___结点_______、_____记录_____、_____元素_____或___顶点_______。【**,★】

16. 通常,存储结点之间可以有___顺序存储_______、_____链式存储_____、_____索引存储_____、_____散列存储___四种关联方式,称为四种基本存储方式。【***】

数据结构课后练习题 第1章 绪论

17. 通常从___正确性________、______可读性_____、_____健壮性______、_____高效性______等几方面评价算法的(包括程序)的质量。【*】

18. 一个算法的时空性能是指该算法的__时间复杂度_____________ 和____空间复杂度__________ , 前者是算法包含的____计算量_______,后者是算法需要的_存储量__________。【*,★】

19. 在一般情况下,一个算法的时间复杂性是____问题规模_______的函数。【*,★】

20. 常见时间复杂性的量级有:常数阶O(_____1______)、对数阶O(__log2 n_________)、线性阶O ( ___n________)、平方阶O(_______n2____)、和指数阶O(______2n_____)。通常认为,具有指数阶量级的算法是______不可行_____的。【*,★】

21. 数据结构的基本任务是数据结构的_____设计______和________实现___。【*】

22. 数据对象是性质相同的 数据元素 的集合。【*】

23. 抽象数据类型是指一个 数学模型 以及定义在该模型上的一组操作。【*】

三、 判断题

1. 数据元素是数据的最小单位。×

2. 数据结构是带有结构的数据元素的集合。√

3. 数据结构,数据元素,数据项在计算机中的映象分别称为存储结构,结点,数据域。【*,★】√

5/12

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

4. 数据项是数据的基本单位。×

5. 数据的逻辑结构是指各数据元素之间的逻辑关系,是用户按使用需要建立的。√

6. 数据的物理结构是数据在计算机中实际的存储形式√。

7. 算法和程序没有区别,所以在数据结构中二者是通用的。【**,★】×

8. 顺序存储结构属于静态结构,链式存储结构属于动态结构。×

四、 计算应用题

1. 设 n 为正整数。确定下列各程序段中下划线语句的频度。【**,★】

(1)

i=1;k=0;

while(ik+=10*i;

i++;

}

k=0;

数据结构课后练习题 第1章 绪论

for(i=1;i<=n;i++){

for(j=i;j<=n;j++)

k++;

} 答案;n-2

(2)

i=1;j=0;

while(i+j<=n){

if(i>j) j++;

else i++;

} 答案;n(n+1)/2

2. 指出下列两个算法的时间复杂度。【*,★】

(1)

int sum1(int n){

int p=1,sum=0,i;

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

7/12

for(i=1;i<=n;i++){

p*=i;

sum+=p;

}

return(sum);

} 答案;O(n)

(2)

int sum2(int n){

int sum=0,I,j;

for(i=1;i<=n;i++){

p=1;

for(j=1;j<=i;j++)

p*=j;

sum+=p;

数据结构课后练习题 第1章 绪论

}

return(sum);

} 答案;O(n2)

3. 有下列几种用二元组表示的数据结构,画出它们对应的逻辑图形表示(即关系图),并指出它们属于哪种结构。

(1)A=(K,R),其中:K={a,b,c,d,e,f,g,h} R={r}

r={,,,,,,}

(2) B=(K,R),其中:K={a,b,c,d,e,f,g,h} R={r} 【*,★】

r={,,,,,,}

(3)C=(K,R),其中:k={1,2,3,4,5,6} R={r}

r={(1,2),(2,3),(2,4),(3,4),(3,5),(3,6),(4,5),(4,6)}

(4)D=(K.R), K={48,25,64,57,82,36,75},R={r1,r2}

r1={<25,36>,<36,48>,<48,57>,<57,64>,<64,75>,<75,82>}

r2={<48,25>,<48,64>,<64,57>,<64,82>,<25,36>,<82,75>}

9/12

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

4. 设有如图所示的逻辑结构图,给出它的逻辑结构。【*,★】

k1k2k3k6k4k8k7k5k9

5. 简述下列术语:数据,数据元素,数据结构,数据对象。【*】答案:数据:对客观物象的符号表示。数据元素:数据的基本单位。数据结构:相互之间存在一种或多种特定关系的数据元素的集合。数据对象:性质相同的数据元素的集合,是数据的一个子集。

逻辑结构与存储结构是什么关系? 【*】

答案:存储结构不仅将数据元素存储到计算机中,而且还要表示各数据元素之间的逻辑关系。

6. 将数量级210,n,n2,n3,nlog2n,log2n,2n, n1/2 ,n!,(2/3)n,n2/3,按增长率进行排列。【**,★】

7. 2 3n , 210 ,log2n, n , n2 3 ,n,nlog2n,n2,n3,2n,n!

五、 算法设计题

1. 已知输入x,y,z 三个不相等的整数,设计一个算法,使得这三个数按从大到小输出,要求:最佳情况:比较2 次,无移动;最差情况:比较3 次,7 次移动。【**,★】

第1章 绪论

北京理工大学珠海学院计算机学院 “数据结构”课程组编制 2011-3-1

11/12

数据结构课后练习题 2. 答案:用交并法

因篇幅问题不能全部显示,请点此查看更多更全内容