`

算法和数据结构

阅读更多
算法:
数据结构与算法的关系是相互依赖不可分割的。
算法的定义:算法是解决特定问题求解步骤的描述,在计算机中为指令的有限序列,并且每条指令表示一个或多个操作。
算法的特性:有穷性、确定性、可行性、输入、输出。
算法设计的要求:正确性、可读性、健壮性、高效率和低存储量需求。
算法特性与算法设计容易混,需要对比记忆。
算法的度量方法:事后统计方法(不科学、不准确)、事前分析估算方法。
在讲解如何用事前分析估算方法之前,我们先给出了函数渐近增长的定义。
算法的时间复杂度和空间复杂度
函数的渐近增长:给定两个函数f(n)和g(n),如果存在一个整数N,使得对于所有的n > N,f(n)总是比g(n)大,那么,我们说f(n)的增长渐近快于g(n)。于是我们可以得出一个结论,判断一个算法好不好,我们只通过少量的数据是不能做出准确判断的,如果我们可以对比算法的关键执行次数函数的渐近增长性,基本就可以分析出:某个算法,随着n的变大,它会越来越优于另一算法,或者越来越差于另一算法。
然后给出了算法时间复杂度的定义和推导大O阶的步骤。
推导大O阶:
用常数1取代运行时间中的所有加法常数。
在修改后的运行次数函数中,只保留最高阶项。
如果最高阶项在且不是1,则去除与这个项相乘的常数。
存得到的结果就是大O阶。
通过这个步骤,我们可以在得到算法的运行次数表达式后,很快得到它的时间复杂度,即大O阶。同时我也提醒了大家,其实推导大O阶很容易,但如何得到运行次数的表达式却是需要数学功底的。
接着我们给出了常见的时间复杂度所耗时间的大小排列: 如图

  • 大小: 19.6 KB
分享到:
评论

相关推荐

    算法与数据结构.pdf

    这一过程通常分为四个步骤:分析问题,设计数据结构和算法,编码,以及测试与维护。在分析阶段,我们需要理解问题的内在联系;在设计阶段,我们将考虑如何用数据结构来表示问题中的元素,以及如何通过算法来处理这些...

    《Delphi算法与数据结构》全书的源代码

    《Delphi算法与数据结构》是一本深入探讨编程领域核心概念的书籍,专注于使用Delphi语言来实现各种算法和数据结构。这本书的源代码提供了学习者一个实践和理解理论知识的绝佳平台。通过分析和运行这些源代码,读者...

    学习数据结构的软件学习数据结构的软件 和好用的 真的利于学习 算法和数据结构 希望大家看看 好好看吧 些的够多的了不说

    学习数据结构的软件 和好用的 真的利于学习 算法和数据结构 希望大家看看 好好看吧 些的够多的了不说学习数据结构的软件 和好用的 真的利于学习 算法和数据结构 希望大家看看 好好看吧 些的够多的了不说学习数据结构...

    国外经典算法和数据结构

    国外经典算法和数据结构 (共3部)part3

    算法导论——所有算法和数据结构的C++实现

    所有代码都是在我学习这本书时亲手敲出来的,并且调试正确了,包括:第三部分到第六部分(即10-26章),外加第七部分31和32章所有的算法和数据结构以及编程习题还有思考题的C++实现源代码; 第一、二部分学习的较早...

    信息学奥赛(基础算法和数据结构)视频链接(2020.11.24).pdf

    * 奥林匹克信息学竞赛(NOIP)数据结构与算法教程:一个详细介绍数据结构和算法的教程。 * 洛谷 2020 算法竞赛秋令营:一个在线算法竞赛平台,提供了许多有用的算法和数据结构资源。 *计蒜客选课中心:一个在线学习...

    数据结构-基于Java的算法和数据结构源码.zip

    数据结构-基于Java的算法和数据结构源码.zip数据结构-基于Java的算法和数据结构源码.zip数据结构-基于Java的算法和数据结构源码.zip

    挑战程序设计竞赛2 算法与数据结构_高清完整书签.rar

    《挑战程序设计竞赛2 算法与数据结构》是一本专为程序设计人员和爱好者量身打造的书籍,尤其适合那些对算法和数据结构有浓厚兴趣的读者,包括高校计算机专业的学生和教师。该书提供了全面且深入的算法解析和实例应用...

    JavaScript算法和数据结构

    数据结构是在计算机中组织和存储数据的一种特殊...算法和数据结构是计算机学习的基石。无论你学习计算机的任何方向,没有扎实的算法和数据结构,肯定学习起来就捉襟见肘了。这是基于 JavaScript 的算法和数据结构教程。

    算法和数据结构练习学习

    算法和数据结构练习学习

    Java算法和数据结构

    一本讲述java算法和数据结构的好书。 什么是数据结构和算法?

    竞赛算法和数据结构

    竞赛算法和数据结构,里面的还挺不错的,希望大家共同努力!

    delphi算法与数据结构.rar

    《Delphi算法与数据结构》是一本专注于使用Delphi编程语言进行算法实现和数据结构学习的资源集合。这本书籍共分为四部分,包含了丰富的理论知识和实践案例,是Delphi开发者深入理解算法和数据结构的必备参考。 在...

    delphi算法与数据结构

    delphi算法与数据结构,这本书使用delphi语言讲解算法和数据结构,pdf内容清晰。

    算法和数据结构新手班.zip

    算法和数据结构新手班.zip

    算法与数据结构课后与习题解析

    《算法与数据结构课后与习题解析》是学习计算机科学不可或缺的重要参考资料,它涵盖了算法设计、分析以及数据结构的基本概念、原理和应用。在这个PDF文档中,读者可以找到详尽的理论解释以及一系列的练习题,以帮助...

    算法+数据结构=程序

    本书的核心理念是,理解并掌握正确的数据结构和算法是提升程序性能和效率的关键。下面我们将详细讨论这两个核心主题。 **算法** 算法是解决问题或执行任务的一系列有序步骤。它们是计算机科学的基础,因为几乎所有...

Global site tag (gtag.js) - Google Analytics