数据结构第一章:绪论(Java视角)

什么是数据结构

数据对象:类比java的类,例如学生类

数据元素:类比Java对象,例如:李四同学

数据项:类比Java中类的属性,例如:名字:李四,年龄:15

数据结构就是相互之间存在一种或者多种关系数据元素集合

数据结构三要素

算法(程序=算法+数据结构)

能够具备有穷性(在又穷时间内可以获得结果)、确定性(相同的输入返回相同的输出)、可见性(可以用代码实现)、输入、输出这五种元素的处理数据的过程叫做算法。

一个健壮的算法需要具备正确性(算法输出的结果是正确结果)、可读性(代码可以被别人理解)、健壮性(能够处理非法数据)、低时间复杂度和低空间复杂度

时间复杂度

O()就是执行时间虽数据规模增长的变化。

计算方式:需要执行每行代码时间相加,非循环代码执行时间为常数可以忽略不计,只需要关心循环时间即可。时间复杂度相加,只需要取最大值即可。

(例如:O(n)+O(log2^n)=O(n),n^2+200n+3=O(n^2))

空间复杂度

普通程序:所占空间与数据规模的关系

递归程序:递归深度

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值