数据结构英文习题解析-第一章 算法复杂度分析Algorithm Analysis

这篇具有很好参考价值的文章主要介绍了数据结构英文习题解析-第一章 算法复杂度分析Algorithm Analysis。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:最近快到FDS考试了,po重刷了一下学校的题目,自己整理了一些解析orz 因为po在自己找解析和学习的过程中非常痛苦,所以在此共享一下我的题目和自己写的解题思路,欢迎各位指出错误~全章节预计会陆续更新,可在专栏查看~

HW1

1. The major task of algorithm analysis is to analyze the time complexity and the space complexity.

T

2. The Fibonacci number sequence {FN} is defined as: F0=0, F1=1, FN=FN−1+FN−2, N=2, 3, .... The time complexity of the function which calculates F(N) recursively is Θ(N!).

F 时间复杂度应该是O(2^N),而N!比2^N还要大。

3. O(N^2) is the same as O(1+2+3+⋯+N).

T 计算sum(1+2+...+N) = (1 + N) * N / 2,去掉常数部分之后可发现 O(1+2+..+N)也为O(N^2)

4. n^0.01 is O(logn).

F  n的多少次方最后都比logn大

5. For the following piece of code

if ( A > B ){     

  for ( i=0; i<N*2; i++ )         

    for ( j=N*N; j>i; j-- )             

      C += A;

}

else {     

  for ( i=0; i<N*N/100; i++ )         

    for ( j=N; j>i; j-- )

      for ( k=0; k<N*3; k++)

        C += B;

}

the lowest upper bound of the time complexity is O(N^3).

T else的j的取值范围会卡住i的范围,如果i大于N,j根本就不会运行。所以i的范围为1~N,else部分T(N)=O(N^3)。if部分更好算,也是O(N^3)。(常数部分都可以直接忽略)

6.Given the following four algorithms with their runtimes for problem size 100 and their time complexities:

Algorithm

Runtime

Time Complexity

A

100

O(N)

B

50

O(N2)

C

25

O(N3)

D

10

O(N4)

Which algorithm is the fastest for problem size 200?

D 把O(N)变成O(2N)代入计算,那么对于A来说runtime翻2倍,对于B来说翻2*2=4倍,C翻8,D翻16..可得100*2,50*4,25*8,10*16,160最小,所以选D

7.Let n be a non-negative integer representing the size of input. The time complexity of the following piece of code is:

x = 0;

while ( n >= (x+1)*(x+1) )

    x = x+1;

A.O(logn)

B.O(n1/2)

C.O(n)

D.O(n2)

B x=1,2,3,...一直算到根号n,while循环停止

8.The recurrent equations for the time complexities of programs P1 and P2 are:

P1: T(1)=1,T(N)=T(N/3)+1

P2: T(1)=1,T(N)=3T(N/3)+1

Then the correct conclusion about their time complexities is:

A.they are both O(logN)

B.O(logN) for P1, O(N) for P2

C.they are both O(N)

D.O(logN) for P1, O(NlogN) for P2

B 递推即可

9.Which of the following pairs of functions has the same speed of growth:

A.2N and NN

B.N and 2/N

C.N2logN and NlogN2

D.NlogN2 and NlogN

D

10.To judge an integer N (>10) is prime or not, we need to check if it is divisible by any odd number from 3 to N​. The time complexity of this algorithm is __.

A.O(N/2)

B.O(根号(N))

C.O(根号(N)logN)

D.O(0.5logN)

B 质数的判断至少要试因子到根号N

11.The Fibonacci number sequence {FN} is defined as: F0=0, F1=1, FN=FN−1+FN−2, N=2, 3, .... The space complexity of the function which calculates FNrecursively is:

A.O(logN)

B.O(N)

C.O(FN)

D.O(N!)

B 注意:空间是可以释放后重新使用的,而时间是不可以重新利用第二次的。所以斐波那契数列会先从F(N)->F(N-1)->F(N-2)层层递归做到F(1),然后返回N层(N是深度)。返回之后空间已经被释放,在下次递归时又可以用上次用过的空间。所以空间复杂度为递归深度N。文章来源地址https://www.toymoban.com/news/detail-838812.html

到了这里,关于数据结构英文习题解析-第一章 算法复杂度分析Algorithm Analysis的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 408数据结构第一章

    1.数据 数据是信息的 载体 计算机程序 识别和处理 的符号的集合 2.数据元素 数据的 基本单位 整体 进行考虑和处理 若干 数据项 组成 数据项是构成元素的不可分割的 最小单位 3.数据对象 具有 相同性质 的数据元素的集合 4.数据类型 原子类型 结构类型 抽象数据类型 5.数据结

    2024年02月08日
    浏览(49)
  • 数据结构预习笔记第一章-数据结构的概念

    重点理解 数据结构的定义 , 逻辑结构 , 存储结构 , 算法的时间效率分析和算法的空间效率分析 2.1 什么是数据结构 概念😵 数据 :所有的数字,字符和能够被输入到计算机中进行运算的符号的集合。 数据元素 :数据元素是数据的 基本单位 ❗️,在计算机中通常是作为

    2024年01月25日
    浏览(57)
  • 数据结构笔记(王道考研) 第一章:绪论

    大部分内容基于中国大学MOOC的2021考研数据结构课程所做的笔记,该课属于付费课程(不过盗版网盘资源也不难找。。。)。后续又根据23年考研的大纲对内容做了一些调整,将二叉排序树和平衡二叉树的内容挪到了查找一章,并增加了并查集、平衡二叉树的删除、红黑树的内

    2024年02月14日
    浏览(49)
  • 算法竞赛:初级算法(第一章:基础数据结构)

    动态链表 动态链表需要 临时分配链表节点 ,使用完毕后释放。 优点 :能及时释放空间,不使用多余内存 缺点 :需要管理空间,容易出错(竞赛一般不用动态链表) 静态链表 静态链表使用 预先分配的一段连续空间 存储链表,这种链表在逻辑上是成立的。 有两种做法:

    2024年01月19日
    浏览(49)
  • 广工anyview数据结构第一章(2021.12)

    广工anyview数据结构习题第一章, 在学习过程中部分题目参考了Giyn 、戮漠、雁过留痕等大佬的代码,在此感谢。 题目解法不是最优解,但希望能给大家有所启发。同时也发了文档资源,需要可自取。 如果对你有帮助,可以给卑微的博主留个赞、关注、收藏   (不是)  (骗一

    2024年02月07日
    浏览(106)
  • 《机器学习》- 习题解析 - 第一章

    首先从概念上理解 版本空间 的定义; 版本空间: 从 假设空间 删除掉 与 正例不一致 和与 反例一致 的假设后,剩余的假设所组成的集合。它可以看成是对正例的最大泛化。 下图是书中的表1.1 西瓜数据集: 表1.1的训练数据集对应的假设空间如下:一共有49种 ; “色泽” “

    2024年02月07日
    浏览(45)
  • 第一章 电路模型和电路定律(习题解析)

    简介: 书后面的习题详解,主要包含的内容关联方向与非关联方向、功率平衡 电路基础(第一章电路模型和电路定律) 第一章电路模型和电路定律(补充) 本篇例题参考教材《电路》——邱关源(第五版)。 例题:对于 N(A) 与 N(B) , u、i 的参考方向是否关联?此时乘积

    2024年02月03日
    浏览(43)
  • 大数据英文考试复习——第一章(了解大数据)

    1.概念和术语 1.1 什么是BI(商业智能) 1.2 什么是KPI(关键性能指标) 1.3 什么是数据集 1.4 什么是analysis 1.5 什么是analytics 2.大数据的特点 3.大数据的用途 BI代表商业智能(Business Intelligence),它是一种利用技术和工具来收集、整理、分析和可视化企业内部和外部数据的过程

    2024年02月03日
    浏览(39)
  • 王道数据结构精选习题及解析

    暴力法的时间复杂度为O(n²) 不要忽略有序性 思路:因为是有序的顺序表,所以重复的元素一定是连在一起的。那我们就使用两个指针,一个指针指向当前不重复有序表的最后一个元素,另一个会从头到尾遍历整个有序表,称为工作指针。 我们让工作指针往后移,如果与当

    2024年02月10日
    浏览(48)
  • 数据结构与算法--图(概念+练习题+解析)

    有向图 在有向图中有以下几点结论: 1.所有顶点的度数之和等于边数的二倍。 2.所有顶点的入度之和等于出度之和。 3.n个顶点的有向完全图有n(n-1)条边。 4.n个顶点的强连通图至少有n条边。 无向图 在无向图中有以下几点结论: 1.所有顶点的度数之和等于边数的二倍。 2.n个顶

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包