当前位置: 首页 > article >正文

嵌入式学习(数据结构:链表)

程序 = 数据结构 +  算法

数据结构 :是相互之间存在一种或多种特定关系的数据元素的集合。通常有以下4类基本逻辑结构。

1、集合,结构中的数据元素之间除了同属于一个集合的关系外,别无其他关系;

2、线性结构,结构中的数据元素之间存在一个对一个的关系;

3、树形结构,结构中的元素之间存在一个对多个的关系;

4、图状结构或网状结构,结构中的数据元素之间存在多个对多个的关系。

存储结构也有四种:1、顺序结构,2、链式结构,3、索引结构,4、散列结构

空间复杂度
​ 引入空间复杂度的概念:空间复杂度作为算法所需存储空间的度量,记作:S(n)=O(f(n))

其中n nn为问题大小的规模。算法要占据的空间包括,算法本身要占据的空间,输入/输出,指令,常数,变量等,算法在执行时所需的辅助空间。

顺序表的优缺点

优点:1、存储密度大;2、可以随机存取表中任一元素。

缺点:1、在插入、删除某一元素时,需要移动大量其他元素;2、浪费大量存储空间;3、属于静态存储形式,数据元素的个数不能够自由扩充。

单链表的结构

单链表是由一连串的结构(称为结点)组成的,其中每个结点都包含指向下一个结点的指针,单链表最后一个结点的指针为空。

头指针总是指向链表的第一个结点,如果整个链表为空(即不包含任何结点),则将头指针置为NULL。

为了操作方便,往往在首元结点前再增加一个结点,称之为头结点,头结点不存储元素。

头指针指向头结点,头结点的指针域指向首元结点,我们称这种单链表为带头结点的单链表。链表为空时,头结点的指针域为空。
 


http://www.kler.cn/a/289624.html

相关文章:

  • 使用elementUI实现表格行拖拽改变顺序,无需引入外部库
  • TCP/IP协议,TCP和UDP区别
  • 【前端学习指南】Vue computed 计算属性 watch 监听器
  • 【算法】——二分查找合集
  • 时序数据库TimescaleDB安装部署以及常见使用
  • STM32嵌入式闹钟系统设计与实现
  • Apache Storm:入门了解
  • 图片去噪及边缘检测
  • Java设计模式——工厂模式
  • 力扣-968监控二叉树(Java贪心详细题解)
  • 用于基于骨架的动作识别的空间时间图卷积网络 ST-GCN (代码+数据集+模型)
  • 使用 Spring Cloud 有什么优势?
  • python读取excel数据详细解说
  • 缺失值插补解释:六种插补方法?
  • opencv学习时常用linux命令
  • ArkUI进阶-性能优化
  • Windows安装anaconda注意事项及jupyter notebook更换目录
  • 网站安全问题整改
  • Linux之grep命令
  • C++重载实现Mystring
  • qt5.15.2 模拟LVGL8.3
  • DataX导入或导出hive数据
  • 读书学习笔记入门 # Datawhale X 李宏毅苹果书 AI夏令营
  • 人活着的意义是什么
  • 监控平台之pvuv/点击事件/路由上报
  • 树莓派扩展RGB点阵屏的使用