数据结构00(顺序表)

2 篇文章 0 订阅

数据结构有四个逻辑结构;集合(略过不考虑)线性结构,树形结构,图结构(网状结构)

有四种存储结构物理结构:顺序存储,链式存储,索引存储,散列存储(后三个非顺序存储

顺序存储结构

首先单独介绍顺序存储结构:逻辑上相邻的数据元素上物理位置也相邻

顺序存储的两大实现方式:静态分配:使用静态数据实现,大小一旦确定无法更改。动态分配:使用动态数组实现(里面有指针 实际上是用指针新拓展一个新的数组) 需要复制时间复杂度高

线性结构

然后首先讲了线性结构包含的表有-顺序存储结构中的表-以及链式存储结构的表-

线性表(逻辑结构),顺序表(顺序存储结构),单链表(链式存储),双向链表,循环链表,静态链表等

顺序表

顺序表特点:随机访问:能在O(1)的时间负责度上直接找到i个元素 存储的密度高(可以在里面存储到数据源本身以及指针) 拓展不方便(就算是动态存储也需要花费时间 已经部分空间) 虽然查找快,但是删除插入元素不方便需要 需要将一大片数据移动

顺序表的顺序存储方式:增加删除一样:

最好情况:时间复杂程度=O (1)

最坏情况:时间复杂程度=O(n) 

 平均情况:O(n)

顺序表的基本操作:

插入Listinsert(&l,i,e) 将元素e插入到L到第i个位置 插入位置的后面的元素都后移

删除ListDelete(&L,i&e)将L到第i个元素删除,并用e返回 删除位置的后面的元素都前移

查找:按位查找

时间复杂度:O(1)因为顺序查找可以根据起始的地址和数据元素大小立即找到第i个元素

按值查找:O(n)

总结:

时间复杂程度可以用 常对幂指阶  (洛必达判断)

x次数循环的数量积就是时间复杂度 (找到最深层循环次数即可)​​​​​​​

空间复杂度

x个变量和结构的数量积就是空间复杂度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Truswei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值