数据结构绪论

绪论

数据结构的三要素

数据的逻辑结构:

逻辑结构

数据的存储结构:

顺序存储:可以实现随机存取,每个元素占用最少的存储空间,可能产生较多的外部碎片。
链式存储:不会出现碎片现象,但只能实现顺序存取。
索引存储:检索速度快,但附加的索引表会额外占用储存空间,实现修改索引表也会花较多的时间。
散列存储:又称哈希存储,检索,增加,删除都很快,但是如果散列函数不好会出现储存单元冲突

数据的运算

通过逻辑结构和存储结构实现的算法。

例题

两种不同的数据结构,逻辑结构和存储结构一定不同吗?
答:不一定,数据的运算也是数据结构的重要方面

算法效率的度量

时间复杂度

一个语句的频度是指这个语句在算法中被重复执行的次数,所有语句的频度合被记为T(n)。时间复杂度主要分析T(n)的数量级。算法的基本运算中研究最深层循环内的语句的频度f(n),因此,算法的时间复杂度记为T(n)=O(f(n))。

时间复杂度加法法则:在所有的频度里面,如果语句之间处于平行关系则,通过加法法则,时间复杂度取最大频度。

时间复杂度乘法法则:若语句之间处于包含关系,通过乘法法则,时间复杂度取频度乘积。

常见的时间复杂度
O(1)<O(log2n)<O(n)<O(nlog2n)<O(n方)<O(n3方)<O(2的n方)<O(n!)<O(n的n方)

空间复杂度

算法的空间负责都S(n)定义为该算法所耗费的存储空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值