数据结构每日回顾

简介: 数据结构每日回顾

2021.04.20回顾

1 什么是数据结构

数据结构 + 算法 = 程序

数据结构:包含逻辑结构和存储结构

算法:设计

2 什么是线性结构:向线一样的结构,这些结构包括:数组、链表、队列、栈

3 线性结构的特点:

a.由N个同类型的元素组成

b.除了第一个元素和最后一个元素之外,每个元素有且仅有一个前驱和后继

c.可以访问任意元素

d.可以删除或者修改任意位置的元素

e.支持动态扩容,长度可以动态的增减

f.可以获取任何一个元素的前驱和后继

4 线性结构的存储结构(实现方式)

a.顺序表:数组

b.链表:链表

2021.04.22

1 内容回顾

手写ArrayList

  1. add(index,e):向指定位置处新增元素
  2. addFirst(e):在头部添加元素
  3. addLast(e):在末尾添加元素
  4. get(index):根据索引返回该索引处的值
  5. find(e):找到元素e的索引
  6. set(index,e):修改索引处的值
  7. remove(index):移除指定位置的值
  8. removeFirst:移除首元素
  9. removeLast:移除末尾元素

强调:使用顺序表实现的线性表:所谓的顺序表,物理空间一定是连续的

我们的插入和删除、修改只能在0–size的范围内操作

2 复杂度分析

复杂度分析:判断/评估 一个程序的优劣

  • 时间复杂度:这段代码执行需要消耗的时间(预估)
  • 空间复杂度:这段代码执行需要消耗的内存资源、CPU资源、硬盘资源、网络资源

2.1 时间复杂度

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eM3vZtgu-1619340687867)(assets/1619060708124.png)]

全称:渐进时间复杂度

时间复杂度


目录
相关文章
|
6月前
|
存储 C++ 索引
c++数据结构
c++数据结构
51 3
|
6月前
|
存储 程序员 定位技术
什么是数据结构
什么是数据结构
108 1
|
3月前
|
消息中间件 缓存 调度
常见的八种数据结构
常见的数据结构包括数组、链表、队列、栈、树、堆、哈希表和图,每种数据结构都有其特点
61 3
|
存储 算法 数据库
【数据结构】初识(上)
【数据结构】初识(上)
71 0
|
6月前
|
算法 C++ 开发者
【C/C++ 数据结构 】 连通图的基本了解
【C/C++ 数据结构 】 连通图的基本了解
89 0
|
存储 容器
|
存储 Java C++
总结数据结构-1
总结数据结构-1
41 0
|
存储 算法 搜索推荐
【BaseArray 数据结构】
【BaseArray 数据结构】
|
存储 机器学习/深度学习