自学内容网 自学内容网

数据结构复习一 来自小灰漫画算法

书籍:github可搜到

算法概述和数据结构基础和树

在这里插入图片描述

算法与数据结构

算法:一系列程序指定,用于解决特定的运算和逻辑问题

算法的应用:运算(如大数运算避免变量溢出) ,搜索,排序,最优决策等

数据结构:数据组织、管理和存储的格式,目的是为了高效访问和修改数据
数据结构组成:
线性结构(数组,链表,栈、队列)


其他:跳表、位图、哈西链表

算法与数据结构relationship:
不同算法选用不同数据结构,如堆排序使用二叉堆

时间复杂度和空间复杂度

代码 的 运行时间 和 运行空间

时间复杂度

收到运行环境与输入规模影响,代码绝对执行时间无法估计,但是可以估计代码基本操作执行次数(执行次数与输入规模呈线性、对数、常量、多项式…)

时间复杂度:将相对执行时间函数简化为一个数量级,比如n,n方等

运行时间是常数量集,则用常数1表示
只保留时间函数的最高阶项
如果最高阶存在,省去最高阶项前面的系数

比较高效算法和低效算法差异(时间复杂度),在数据量随规模增长时,差异可以达到天差地别

空间复杂度

场景:运行程序时,需要存储一些中间的程序,一边后续指令更加方便进行

空间复杂度是对算法运行过程中临时占用空间大小的亮度

空间复杂度常有以下类型:常量空间、线性空间、二位空间、递归空间、

二叉树

在这里插入图片描述

二叉堆

在这里插入图片描述


原文地址:https://blog.csdn.net/weixin_38235865/article/details/136331828

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!