数据结构与序设.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 数据结构概论 1.1 判断下列叙述的对错。如果正确,在题前打“?”,否则打“?”。 (1) 数据元素是数据的最小单位。 (2) 数据结构是数据对象与对象中数据元素之间关系的集合。 (3) 数据结构是具有结构的数据对象。 (4) 数据的逻辑结构是指各数据元素之间的逻辑关系,是用户按使用需要建立的。 (5) 算法和程序原则上没有区别,在讨论数据结构时二者是通用的。 1.2 判断下列叙述的对错。如果正确,在题前打“?”,否则打“?”。 (1) 所谓数据的逻辑结构是指数据元素之间的逻辑关系。 (2) 同一数据逻辑结构中的所有数据元素都具有相同的特性是指数据元素所包含的数据项的个数都相等。 (3) 数据的逻辑结构与数据元素本身的内容和形式无关。 (4) 数据结构是指相互之间存在一种或多种关系的数据元素的全体。 (5) 从逻辑关系上讲,数据结构主要分为两大类:线性结构和非线性结构。 1.3 填空题 算法是一个有穷的指令集,它为解决某一特定任务规定了一个运算序列。它应当具有输入、输出、( ① )、有穷性和可执行性等特性。 算法效率的度量分为( ② )和( ③ )。( ② )主要通过在算法的某些部位插装时间函数来测定算法完成某一规定功能所需的时间。而( ③ )不实际运行算法,它是分析算法中语句的执行次数来度量算法的时间复杂性。 程序所需的存储空间包含两个部分( ④ )和( ⑤ )。( ④ )空间的大小与输入输出数据的个数多少,数值大小无关;( ⑤ )空间主要包括其大小与问题规模有关的成分变量所占空间,引用变量所占空间,以及递归栈所用的空间,还有在算法运行过程中动态分配和回收的空间。 1.4 设n为正整数, 分析下列各程序段中加下划线的语句的执行次数。 (1) for ( int i = 1; i = n; i++ ) for ( int j = 1; j = n; j++ ) { c[i][j]=0.0; for ( int k = 1; k = n; k++ ) c[i][j] = c[i][j] + a[i][k] * b[k][j]; } (2) x = 0; y = 0; for ( int i = 1; i = n; i++ ) for ( int j = 1; j = i; j++ ) for ( int k = 1; k = j; k++ ) x = x + y; 1.5 试计算以下求和程序中所有语句的总执行次数。 float sum( float a[ ], int n ) { float s = 0.0; for ( int i = 0; i n; i++ ) s += a[i]; return s; } 1.6 试用大O表示法给出下面程序的时间复杂性。 void out ( float x[ ][ ], int m, int n ) { float sum[ ]; for ( int i = 0; i m; i++ ) { sum[i] = 0.0; for ( int j = 0; j n; j++ ) sum[i] = x[i][j]; } for ( int i = 0; i m; i++ ) cout Line: i : sum[i] endl; } 第二章 数组 2.1 判断下列叙述的对错。如果正确,在题前打“?”,否则打“?”。 (1) 线性表的逻辑顺序与物理顺序总是一致的。 (2) 线性表的顺序存储表示优于链式存储表示。 (3) 线性表若采用链式存储表示时所有存储单元的地址可连续可不连续。 (4) 二维数组是其数组元素为线性表的线性表。 (5) 每种数据结构都应具备三种基本运算:插入、删除和搜索。 2.2 线性结构可用顺序表或链表存储。试问: (1) 如果有n个表同时并存,并且在处理过程中各表的长度会动态发生变化,表的总数也可能自动改变、在此情况下,应选用哪种存储表示?为什么? (2) 若表的总数基本稳定,且很少进行插入和删除,但要求以最快的速度存取表中的元素,这时,应采用哪种存储表示?为什么? 2.3 已知整数数组A[ ]中有n个元素,试设计一个算法,求数组中所有元素值的和。 2.4 已知整数数组A[ ]中有

文档评论(0)

mv2323 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档