《数据结构》习题汇编01 第一章 绪论 试题

合集下载

《数据结构》期末考试复习题 第1章 绪论

《数据结构》期末考试复习题 第1章 绪论

第1章绪论一、选择题1. 算法的计算量的大小称为计算的()。

【北京邮电大学2000 二、3 (20/8分)】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于()【中科院计算所 1998 二、1 (2分)】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是(1),它必须具备(2)这三个特性。

(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】4.一个算法应该是()。

【中山大学 1998 二、1(2分)】A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C.5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为()两大类。

【武汉交通科技大学 1996 一、4(2分)】A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是()。

【北方交通大学 2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据结构中,哪一个是线性结构()?【北方交通大学 2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关?()【北方交通大学 2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为()【北京工商大学 2001 一、10(3分)】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A. O(2n) B.O(n) C.O(n2) D.O(log2n)12.程序段 FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中 n为正整数,则最后一行的语句频度在最坏情况下是()A. O(n)B. O(nlogn)C. O(n3)D. O(n2)【南京理工大学1998一、1(2分)】13.以下哪个数据结构不是多型数据类型()【中山大学 1999 一、3(1分)】A.栈 B.广义表 C.有向图 D.字符串14.以下数据结构中,()是非线性数据结构【中山大学 1999 一、4】A.树 B.字符串 C.队 D.栈15. 下列数据中,()是非线性数据结构。

第一章绪论练习题

第一章绪论练习题

第一章绪论练习题一、填空题1.数据结构是一门研究非数值计算的程序设计问题中计算机的______以及它们之间的______和运算等的学科。

2.数据结构被形式地定义为(D,R),其中D是______的有限集合,R是D上的______有限集合。

3.数据结构包括数据的______、数据的______和数据的______这三个方面的内容。

4.数据结构按逻辑结构可分为两大类,它们分别是______和______。

5.线性结构中元素之间存在______关系,树形结构中元素之间存在______关系,图形结构中元素之间存在______关系。

6.在线性结构中,第一个结点______前驱结点,其余每个结点有且只有1个前驱结点;最后一个结点______后继结点,其余每个结点有且只有1个后继结点。

7.在树形结构中,树根结点没有______结点,其余每个结点有且只有______个前驱结点;叶子结点没有______结点,其余每个结点的后继结点数可以______。

8.在图形结构中,每个结点的前驱结点数和后继结点数可以______。

9.数据的存储结构可用四种基本的存储方法表示,它们分别是______。

10.数据的运算最常用的有5种,它们分别是______。

11.一个算法的效率可分为______效率和______效率。

12.计算机专业人员必须完成的两项基本任务是:______和______。

13.数据在计算机存储器中的存在形式称为______。

14.概括地说,数据结构课程的主要内容包括:数据的______、定义在______、数据的______的实现。

此外,该课程还要考虑各种结构和实现方法的______。

15.由一种______结构和一组______构成的整体是实际问题的一种数学模型,这种数学模型的建立、选择和实现是数据结构的核心问题。

16.存储结构是逻辑结构的______实现。

17.数据表示任务是逐步完成的,即数据表示形式的变化过程是______->______->______。

最新版《数据结构》各章习题及答案

最新版《数据结构》各章习题及答案

最新版《数据结构》各章习题及答案第一章绪论一、选择题1.组成数据的基本单位是()(A)数据项(B)数据类型(C)数据元素(D)数据变量2.数据结构是研究数据的()以及它们之间的相互关系。

(A)理想结构,物理结构(B)理想结构,抽象结构(C)物理结构,逻辑结构(D)抽象结构,逻辑结构3.在数据结构中,从逻辑上可以把数据结构分成()(A)动态结构和静态结构(B)紧凑结构和非紧凑结构(C)线性结构和非线性结构(D)内部结构和外部结构4.数据结构是一门研究非数值计算的程序设计问题中计算机的(①)以及它们之间的(②)和运算等的学科。

① (A)数据元素(B)计算方法(C)逻辑存储(D)数据映像② (A)结构(B)关系(C)运算(D)算法5.算法分析的目的是()。

(A)找出数据结构的合理性(B)研究算法中的输入和输出的关系(C)分析算法的效率以求改进(D)分析算法的易懂性和文档性6.计算机算法指的是(①),它必须具备输入、输出和(②)等5 个特性。

① (A)计算方法(B)排序方法(C)解决问题的有限运算序列(D)调度方法② (A)可执行性、可移植性和可扩充性(B)可行性、确定性和有穷性(C)确定性、有穷性和稳定性(D)易读性、稳定性和安全性二、判断题1.数据的机内表示称为数据的存储结构。

()2.算法就是程序。

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

()4.算法的五个特性为:有穷性、输入、输出、完成性和确定性。

()5.算法的时间复杂度取决于问题的规模和待处理数据的初态。

()三、填空题1.数据逻辑结构包括________、________、_________ 和__________ 四种类型,其中树形结构和图形结构合称为_____ 。

2.在线性结构中,第一个结点____前驱结点,其余每个结点有且只有______ 个前驱结点;最后一个结点______后续结点,其余每个结点有且只有 _______ 个后续结点。

3.在树形结构中,树根结点没有_______ 结点,其余每个结点有且只有_______个前驱结点;叶子结点没有 ________ 结点,其余每个结点的后续结点可以_________。

《数据结构》第一章 绪论 习题

《数据结构》第一章  绪论    习题

《数据结构》第一章绪论习题1-1 什么叫数据?什么叫数据元素?什么叫数据项?1-2 什么叫数据的物理结构?什么叫数据的存储结构?什么叫数据的操作?1-3 数据结构课程主要讨论哪三个方面的问题?1-4 分别画出线性结构、树结构和图结构的逻辑示意图。

1-5 什么叫类型?什么叫数据类型?什么叫抽象数据类型?1-6 怎样利用抽象数据类型设计大型软件?1-7 什么叫算法?算法的5个性质是什么?1-8 根据算法的性质解释算法和程序的区别?1-9 评判算法的优劣有哪几种方法?1-10 什么叫算法的时间复杂度?怎样表示算法的时间复杂度?1-11 设n为已在算法前边定义的整数类型,并已知n为正整数,分析下列各算法中加下划线语句的执行次数,并给出各算法的时间复杂度T(n)。

(1) int i = 1, k = 0;while (i < n-1){k = k + 10 * i; i = i + 1;}(2) int i = 1, k = 0;do{k = k + 10 * i; i = i + 1;}while (i != n);(3) int i = 1, j = 1;while (i <= n && j <= n){i = i + 1; j = j + 1;}(4) int x = n; /* n > 1 */int y = 0;while(x >= (y+1)*(y+1))y++;(5) int i, j, k, x = 0;for (i = 0; i < n; i++)for (j = 0; j < i; j++)for (k = 0; k < j; k++)x = x + 2;1-12 设求解同一个问题有三种算法,三种算法各自的时间复杂度分别为O(n2),O(2n)和O(nlg n),哪种算法最可取?为什么?1-13 按增长率从小到大的顺序排列下列各组函数:(1)2100,(3/2)n,(2/3)n,(4/3)n(2)n,n3/2,n2/3,n!,n n(3)lb n,n×lb n,n lb n,n*1-14 下面是几个典型的时间复杂度函数估值问题:(1)当n为正整数时,n取何值能使2n> n3;(2)说明2n+ n3是O(2n);(3)给出5(n2 + 6) / (n + 3) + 7lg n的O值估计。

数据结构习题(包含全部答案解析)

数据结构习题(包含全部答案解析)

数据结构习题集(自编)第一章绪论一、选择题1.数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的()和运算的学科。

A.结构B.关系 C.运算 D.算法2.在数据结构中,从逻辑上可以把数据结构分成()。

A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.逻辑结构和存储结构3.线性表的逻辑顺序和存储顺序总是一致的,这种说法()。

A.正确B.不正确 C.无法确定 D.以上答案都不对4.算法分析的目的是()。

A.找出算法的合理性 B.研究算法的输人与输出关系C.分析算法的有效性以求改进 D.分析算法的易懂性5. 算法的时间复杂度取决于()A.问题的规模B待处理数据的初态 C. A和B6.一个算法应该是()。

A.程序B.问题求解步骤的描述C.要满足五个基本特性 D.A和C.7. 下面关于算法说法错误的是()A.算法最终必须由计算机程序实现B.为解决某问题的算法与为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的8.以下与数据的存储结构无关的术语是()。

A.循环队列 B. 链表 C. 哈希表 D. 栈9.在下面的程序段中,对x的赋值语句的频度为()for(i=0;i<n;i++)for(j=0;j<n;j++)x=x+1;nA. 2n B.n C.n2 D.log210.以下数据结构中,()是非线性数据结构A.树 B.字符串 C.队列 D.栈11. 下列数据中,()是线性数据结构。

A.哈夫曼树 B.有向无环图 C. 二叉排序树 D. 栈12.以下属于逻辑结构的是()。

A.顺序表 B. 哈希表 C.有序表 D. 单链表二、填空题1、_______是信息的载体,是对客观事物的符号表示,它能够被计算机识别、存储、加工和处理,________是对能够有效的输人到计算机中并且能够被计算机处理的符号的总称。

(数据、数据)2、数据元素是数据的______,有些情况下也称为元素、结点、顶点、记录等。

数据结构第一章绪论习题

数据结构第一章绪论习题

01绪论【单选题】1. (A)是数据的基本单位。

A、数据元素B、数据对象C、数据项D、数据结构2. (C)是数据的不可分割的最小单位。

A、数据元素B、数据对象C、数据项D、数据结构3. 若采用非顺序映象,则数据元素在内存中占用的存储空间(C)。

A、一定连续B、一定不连续C、可连续可不连续4. 若采用顺序映象,则数据元素在内存中占用的存储空间(A)。

A、一定连续B、一定不连续C、可连续可不连续5. 在数据结构中,从逻辑上可以把数据结构分为(C)A、动态结构和静态结构B、紧凑结构和非紧凑结构C、线性结构和非线性结构D、内部结构和外部结构6. 在树形结构中,数据元素间存在(B)的关系。

A、一对一B、一对多C、多对多D、除同属一个集合外别无关系7. 下列说法中错误的是(B)。

A、数据对象是数据的子集B、数据元素间关系在计算机中的映象即为数据的存储结构C、非顺序映象的特点是借助指示元素存储地址的指针来表示数据元素间逻辑关系D、抽象数据类型指一个数学模型及定义在该模型上的一组操作8. 计算机算法指的是(C)。

A、计算方法B、排序方法C、解决问题的有限运算序列D、调度方法9. 下列不属算法特性的是(D)。

A、有穷性B、确定性C、零或多个输入D、健壮性10.算法分析的目的是(C)。

A、找出数据结构的合理性B、研究算法中的输入和输出的关系C、分析算法的效率以求改进D、分析算法的易读性和文档性11.算法分析的两个主要方面是(A)。

A、空间复杂性和时间复杂性B、正确性和简明性C、可读性和文档性D、数据复杂性和程序复杂性12.算法的计算量的大小称为算法的(A)。

A、效率B、复杂性C、现实性D、难度13.在下面的程序段中,对x的赋值语句的频度为(C)。

for(i=1;i<=n;++i)for(j=1;j<=n;++j)x=x+1;A、2nB、nC、n2D、log2n14.设n为正整数,则如下程序段中最后一行的语句频度在最坏情况下是(D)。

数据结构第1章习题-绪论

数据结构第1章习题-绪论

第1章绪论一、选择题1. 算法的计算量的大小称为计算的()。

【北京邮电大学2000 二、3 (20/8分)】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于()【中科院计算所 1998 二、1 (2分)】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是(1),它必须具备(2)这三个特性。

(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】4.一个算法应该是()。

【中山大学 1998 二、1(2分)】A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C.5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为()两大类。

【武汉交通科技大学 1996 一、4(2分)】A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是()。

【北方交通大学 2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据结构中,哪一个是线性结构()?【北方交通大学 2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关?()【北方交通大学 2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表13.以下哪个数据结构不是多型数据类型()【中山大学 1999 一、3(1分)】A.栈 B.广义表 C.有向图 D.字符串14.以下数据结构中,()是非线性数据结构【中山大学 1999 一、4】A.树 B.字符串 C.队 D.栈15. 下列数据中,()是非线性数据结构。

数据结构(第二版)习题

数据结构(第二版)习题

第一章绪论一、问答题1.什么是数据结构?2.叙述四类基本数据结构的名称与含义。

3.叙述算法的定义与特性。

4.叙述算法的时间复杂度。

5.叙述数据类型的概念。

6. 叙述线性结构与非线性结构的差别。

7.叙述面向对象程序设计语言的特点。

8.在面向对象程序设计中,类的作用是什么?9.叙述参数传递的主要方式及特点。

10.叙述抽象数据类型的概念。

二、判断题(在各题后填写“√”或“×”)1.线性结构只能用顺序结构来存放,非线性结构只能用非顺序结构来存放。

()2.算法就是程序。

()3. 在高级语言(如C或PASCAL)中,指针类型是原子类型。

()三、计算下列程序段中X=X+1的语句频度for(i=1;i<=n;i++)for(j=1;j<=i;j++)for(k=1;k<=j;k++)x=x+1;四、试编写算法,求一元多项式Pn(x)=a0+a1x+a2x2+a3x3+…anxn的值Pn(x0),并确定算法中的每一语句的执行次数和整个算法的时间复杂度,要求时间复杂度尽可能小,规定算法中不能使用求幂函数。

注意:本题中的输入ai(i=0,1,…,n),x和n,输出为Pn(x0)。

通常算法的输入和输出可采用下列两种方式之一:(1)通过参数表中的参数显式传递。

(2)通过全局变量隐式传递。

试讨论这两种方法的优缺点,并在本题算法中以你认为较好的一种方式实现输入和输出。

第二章线性表2.1描述以下三个概念的区别:头指针,头结点,首元素结点。

2.2填空:(1)在顺序表中插入或删除一个元素,需要平均移动____元素,具体移动的元素个数与__插入或删除的位置__有关。

(2)在顺序表中,逻辑上相邻的元素,其物理位置______相邻。

在单链表中,逻辑上相邻的元素,其物理位置______相邻。

(3)在带头结点的非空单链表中,头结点的存储位置由______指示,首元素结点的存储位置由______指示,除首元素结点外,其它任一元素结点的存储位置由____指示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构与算法设计》习题册第一章绪论一、单项选择题1.数据结构是一门研究非数值计算的程序设计问题中计算机的①以及它们之间的②和运算等的学科。

①A. 数据元素 B. 计算方法 C. 逻辑存储 D. 数据映象②A. 结构 B. 关系 C. 运算 D. 算法2.数据结构被形式地定义为(K,R),其中K是①的有限集,R是K上的②有限集。

①A. 算法 B. 数据元素 C. 逻辑结构 D. 数据操作②A. 操作 B. 存储 C. 映象 D. 关系3.在数据结构中,从逻辑上可以把数据结构分成。

A. 动态结构和静态结构B. 紧凑结构和非紧凑结构C. 线性结构和非线性结构D. 内部结构和外部结构4.数据结构在计算机内存中的表示是指。

A. 数据的存储结构B. 数据结构C. 数据的逻辑结构D. 数据元素之间的关系5.在数据结构中,与所使用的计算机无关的是数据的结构。

A. 逻辑B. 存储C. 逻辑和存储D. 物理6.算法分析的目的是①,算法分析的两个主要方面是②。

①A. 找出数据结构的合理性 B. 研究算法中的输入和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和文档性②A. 空间复杂度和时间复杂度 B. 正确性和简明性C. 可读性和文档性D. 数据复杂性和程序复杂性7.计算机算法指的是①,它必须具备输入、输出和②等5个特性。

①A. 计算方法 B. 排序方法C. 解决问题的有限运算序列D. 调度方法②A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性D. 易读性、稳定性和安全性8.在以下叙述中,正确的是。

A. 线性表的线性存储结构优于链表存储结构B. 二维数组是其数据元素为线性表的线性表C. 栈的操作方式是先进先出D. 队列的操作方式是先进后出9.在决定选取何种存储结构时,一般不考虑。

A. 各结点的值如何B. 结点个数的多少C. 对数据有哪些运算D. 所用编程语言实现这种结构是否方便10.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储。

A. 数据的处理方法B. 数据元素的类型C. 数据元素之间的关系D. 数据的存储方法11.下面说法错误的是。

(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估计算法执行时间的一个上界(4)同一个算法,实现语句的级别越高,执行效率越低A. (1)B. (1)、(2)C. (1)、(4)D. (3)12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着。

A. 数据元素具有同一特点B. 不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致C. 每个数据元素都一样D. 数据元素所包含的数据项的个数要相等13.以下说法正确的是。

A. 数据元素是数据的最小单位B. 数据项是数据的基本单位C. 数据结构是带结构的各数据项的集合D. 一些表面上很不相同的数据可以有相同的逻辑结构二、填空题1.一个数据结构在计算机中的称为存储结构。

2.数据逻辑结构包括①、②和③三种结构,树形结构和图形结构合称为④。

3.在线性结构中,第一个结点①前驱结点,其余每个结点有且只有②个前驱结点;最后一个结点③后继结点,其余每个结点有且只有④个前驱结点。

4.在树形结构中,树根结点没有①结点,其余每个结点有且只有②个前驱结点;叶子结点没有③结点,其余每个结点的后继结点可以有④个。

5.在图形结构中,每个结点的前驱结点数和后继结点数都可以有个。

6.线性结构中元素之间存在①关系,树形结构中元素之间存在②关系,图形结构中元素之间存在③关系。

7.算法的五个重要特性是、、、输入和输出。

8.算法可以用不同的语言描述,如果用C语言或PASCAL语言等高级语言来描述,则算法实现上就是程序了。

这个断言是(正确的或错误的)。

三、简答题1.设有数据逻辑结构为:B=(K,R) K={k1,k2,...,k9}R={<k1,k3>,<k1,k8>,<k2,k3>,<k2,k4>,<k2,k5>,<k3,k9>,<k5,k6>,<k8,k9>,<k9,k7>,<k4,k7>,<k4,k6>}画出这个逻辑结构的图示,并确定相对关系R,哪些结点是开始结点,哪些结点是终端结点。

2.设有如图1所示的逻辑结构图示,给出它的逻辑结构。

图13.有下列几种用二元组表示的数据结构,画出它们分别对应的逻辑图形表示,并指出它们分别属于何种结构。

(1)A=(K,R),其中:K={a,b,c,d,e,f,g,h} R={r}r={<a,b>,<b,c>,<c,d>,<d,e>,<e,f>,<f,g>,<g,h>}(2)B=(K,R),其中:K={a,b,c,d,e,f,g,h} R={r}r={<d,b>,<d,g>,<d,a>,<b,c>,<g,e>,<g,h>,<e,f>}(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>}4.当你为解决某一问题而选择数据结构时,应从哪些方面考虑?四、算法设计题1.下面程序段的时间复杂度是。

for(i=0;i<n;i++)for(j=0;j<m;j++)A[i][j]=0;2.下面程序段的时间复杂度是。

i=s=0;while(s<n){i++; s+=i;}3.下面程序段的时间复杂度是。

s=0;for(i=0;i<n;i++)for(j=0;j<n;j++)s+=B[i][j];sum=s;4.下面程序段的时间复杂度是。

i=1;while(i<=n)i=i*3;5.有如下递归函数fact(n),分析其时间复杂度。

fact(int n){if(n<=1) return 1;else return (n*fact(n-1));}6.指出下列个算法的时间复杂度。

(1)prime(int n){ //n为一个正整数int i=2;while(n%i!=0&&i<sqrt(n)) i++;if(i*1.0>sqrt(n)) printf(“%d 是一素数\n”,n);else printf(“%d 不是一个素数\n”,n);}(2)sum1(int n){ //n为一个正整数int p=1,sum=0,i;for(i=1;i<=n;i++){p*=i; sum+=p;}return sum;}(3)sum2(int n){ //n为一个正整数int sum=0,i,j;for(i=1;i<=n;i++){p=1;for(j=1;j<=i;j++) p*=j;sum+=p;}return sum;}7.求两个n阶矩阵的乘法C=A×B,其算法如下:#define MAX 100void MaxtrixMult(int n,float a[MAX][MAX], float b[MAX][MAX],float c[MAX][MAX]){int i,j,k;float x;for(i=1;i<=n;i++){for(j=1;j<=n;j++){x=0;for(k=1;k<=n;k++) x+=a[i][k]*b[k][j];c[i][j]+=x;}}}分析该算法的时间复杂度。

8.设n是偶数,试计算运行下列程序段后m的值并给出该程序段的时间复杂度。

m=0;for(i=1;i<=n;i++)for(j=2*i;j<=n;j++)m++;9.给定有m个整数的递增有序数组a[1..m]和有n个整数的递减有序数组b[1..n],试写一个算法,将数组a和b归并为递增有序数组c[1..m+n],要求算法的时间复杂度为O(m+n)。

10.求解盘片为n的汉诺塔问题的算法如下,分析其算法时间复杂度。

void hanoi(int n,char x,char y,char z){if(n==1) printf(“Move disk %d from %c to %c.\n”,n,x,z);else{hanoi(n-1,x,z,y);printf(“Move disk %d from %c to %c.\n”,n,x,z);hanoi(n-1,y,x,z);}}11.分析以下程序段的时间复杂度。

s=0;for(i=0;i<=n;i++)for(j=0;j<=n;j++)for(k=0;k<i+j;k++)s++;。

相关文档
最新文档