数据结构--绪论自测题

一.填空题

1. 数据结构被形式地定义为(D, R),其中D  数据元素     的有限集合,RD上的         有限集合。

2. 数据结构包括数据的     逻辑结构      、数据的    存储结构      和数据的    运算           这三个方面的内容。

3. 数据结构按逻辑结构可分为两大类,它们分别是     线性结构            非线性结构         

4. 线性结构中元素之间存在  一个对一个的  关系,树形结构中元素之间存在   一个对多个的   关系,图形结构中元素之间存在    多个对多个的     关系。

5在线性结构中,第一个结点   没有  前驱结点,其余每个结点有且只有1个前驱结点;最后一个结点    没有   后续结点,其余每个结点有且只有1个后续结点。

6. 在树形结构中,树根结点没有    前驱   结点,其余每个结点有且只有   一   个前驱结点;叶子结点没有    后续  结点,其余每个结点的后续结点数可以   有多个      

7. 在图形结构中,每个结点的前驱结点数和后续结点数可以    有多个    

8. 数据的存储结构可用四种基本的存储方法表示,它们分别是    顺序、链式、散列、索引             

9数据的运算最常用的有5种,它们分别是      插入、删除、修改、查找、排序       

10. 一个算法的效率可分为     时间    效率和   空间    效率。

11数据结构是研讨数据的   逻辑结构       存储结构   ,以及它们之间的相互关系,并对与这种结构定义相应的   操作    ,设计出相应的   算法   

12. 下面程序段中带下划线的语句的执行次数的数量级是   O(nlog(2n次方))  

i=1;

while( i<n )

{for( j=1, j<=n, j++)

     x=x+1;

i=i*2;

二.单项选择题

1应用软件是指( D  ).

A)所有能够使用的软件  B) 能被各应用单位共同使用的某种软件

C)所有微机上都应使用的基本软件  D) 专门为某一应用目的而编制的软件

2. 数据结构中,与所使用的计算机无关的是数据的(  C  )结构.

A) 存储     B) 物理         C) 逻辑       D) 物理和存储

3. 算法分析的目的是( C  )

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

C) 分析算法的效率以求改进     D) 分析算法的易懂性和文档性

4. 计算机算法必须具备输入、输出和( B  )等5个特性。

A) 可行性、可移植性和可扩充性       B) 可行性、确定性和有穷性

C) 确定性、有穷性和稳定性           D) 易读性、稳定性和安全性

5. 下面说法错误的是(  B  )

    (1)算法原地工作的含义是指不需要任何额外的辅助空间

   (2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法

   (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界

   (4)同一个算法,实现语言的级别越高,执行效率就越低

         A(1)      B.(1),(2)    C.(1),(4)     D.(3)

6从逻辑上可以把数据结构分为( C )两大类。

A.动态结构、静态结构       B.顺序结构、链式结构  

C.线性结构、非线性结构     D.初等结构、构造型结构

7以下与数据的存储结构无关的术语是(  D  )。

A.循环队列     B.链表      C.哈希表      D.  

8. 下列数据中,(  C  )是非线性数据结构。

A.栈       B.  队列       C.  完全二叉树    D.

9连续存储设计时,存储单元的地址(  A  )。

A.一定连续    B.一定不连续  

C.不一定连续  D.部分连续,部分不连续

 

三.判断题(正确的打√,错误的打×)

1. 数据元素是数据的最小单位。                                      ( 错 )

2. 记录是数据处理的最小单位。                                             (  错 )

3. 数据的逻辑结构是指数据的各数据项之间的逻辑关系;                   (错  )

4算法的优劣与算法描述语言无关,但与所用计算机有关。               (  错  )

5健壮的算法不会因非法的输入数据而出现莫名其妙的状态。           (  对  )

6算法可以用不同的语言描述,如果用C语言或PASCAL语言等高级语言来描述,则算法实际上就是程序了。            (  错  ) 

7程序一定是算法。                                             ( 错  )

8数据的物理结构是指数据在计算机内的实际存储形式。              (  对  )

9. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。              (  错  )

10. 数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的储存结构。 (  错  )





答案,仅仅是个人意见,如有错误或者不到之处,敬请指出。




  • 10
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一章 绪论作业答案(共50分) 一、分析如下程序中 (1)~ (10)各语句的频度。(每个1分,共10分) Ex( ) { int i , j , t ; (1) for( i=1 ; i<10 ; i++) //n = (2) printf(“\n %d” , i ); //n = (3) for(i=1; i<=2; i++) //n = (4) printf(“\n”); //n = (5) for(i=1; i<=9; i++) //n = { (6) for(j=1; j <= i ; j++) //n = { (7) t = i * j ; //n = (8) printf(“]”,t); //n = } (9) for(j=1; j 0) { if(x > 100) {x -= 10 ; y -- ;} else x ++ ; } 问if 语句执行了多少次?(2分) y--执行了多少次?(2分) x ++执行了多少次?(2分) 三、回答问题(共25分) 书中16页的起泡排序如下: void bubble_sort(int a[],int n){ //将a中整数序列重新排列成自小至大有序的整数序列。 for(i=n-1,change=TRUE;i>=1&&change;--i){ change=FALSE; for(j=0;ja[j+1]{a[j]<-->a[j+1];change=TRUE; } } }//bubble_sort 1.(共15分)分析该算法的最佳情况 ,最坏情况和平均情况下各自的时间复杂度(给出分析思路与过程)。 (1) 最佳情况的时间复杂度分析(5分): (2) 最坏情况的时间复杂度分析(5分): (3) 平均情况的时间复杂度分析(5分): 2.(共10分)比较与C语言书中的起泡排序异同,并从时空效率角度说明谁更优。 四、完成如下选择题(每3分,共9分)。 1. 设f为原操作,则如下算法的时间复杂度是( )。 for (i = 1; i*i=1;i--) for(j=1;jA[j+1]) A[j]与A[j+1]对换; 其中n为正整数,则算法在最坏情况下的时间复杂度为( )。 A.O(n) B.O(nlog2n) C. O(n3) D. O(n2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值