112

目录

  • 其他
  • 开端
  • 线性表
  • 栈和队列
    • 队列
    • 队列和栈的应用
    • 矩阵的压缩存储
    • KMP算法
    • 相关概念术语
    • 二叉树
    • 二叉树的遍历
    • 树与森林
    • 树的应用
    • 图的相关概念
    • 图的存储
    • 图的遍历:
    • 图的应用:
      • 最小生成树
      • 找最短路径
      • 有向无环图描述表达式
      • 拓扑排序
      • 关键路径
  • 查找算法
    • B-树
    • 散列函数
  • 排序算法
    • 内部排序
    • 外部排序
  • 经典例题
    • 算法
    • 1.线性表
    • 2.栈和队列
    • 3.二叉树

111

数据结构学习笔记,若有任何问题欢迎大家评论指出

其他

1.存取包括存和取
2.第i个元素指下标为i-1的位置
3.注意题干,注意题干中的陷阱

开端

有关概念:一个数据元素由若干个数据项组成,数据对象是具有相同性质的的数据元素的集合。 抽象数据元素可以理解为抽象成员,他是没有实际含义的数据元素,当实际使用时才确定他的数据类型
数据结构是相互存在一种或多种特定关系的数据元素的集合(数据之间的关系)
数据结构三要素: 存储结构(顺序,链式,索引,散列) 数据运算(与或非加减乘除等等)
逻辑结构:集合,线性,树形,图或网(主要分为线性和树状,图形) 线性是除了首尾外唯一前驱后继,树是除了根外唯一前驱不限后继数。图不限前驱后继数
逻辑结构+存储结构=物理结构,例:线索二叉树是物理结构
抽象数据类型包含逻辑结构和数据运算,可以定义一个完整的数据结构(实现则要用到存储结构)
是从基本数据类型中抽象出来的,即几种类型混合使用的类型,例如表,队列,堆等等
算法具有的特性:确定性:即运算结果是唯一的,每一步是确定的不是模棱两可的
有穷性,至少一个输出,有效性
最坏情况下某语句的频度指某一语句出现的频率(执行次数最大的时候)
时间和空间复杂度
时间复杂度:T(n) 一般表示程序执行次数T和传入的参数n的关系
一般只关注n的最高阶数,即如果T(n)=6n3+10n2+100000000,一般我们都假设T(n)=O(n3
o(1)<o(log2n)<O(n)<o(nlog2n)<O(n2)<o(n3)<o(2n)<O(n!)<O(nn)
例:传入i=1;i<n i=2i 则i=1,2,4,8,16 所以2x=n,即x=log2n,所以时间复杂度为log2n
空间复杂度:S(n) 一般表示动态容器扩容问题
无论问题的规模怎么变,算法运行所需的内存空间都是固定的常量,则空间复杂度S(n)=O(1),这种情况我们成为“原地工作

线性表

注意:1.头指针不等于头结点,头指针指头结点的指针域,指向第一个结点,
所以设置尾指针的链表指尾结点存在指针域,其值一般设置为NULL
2.带头结点的单链表,头结点不是第一个元素
线性表:是一种最简单的线性结构。相同数据类型的m个数据元素的有限序列,以下都是线性表
顺序表:指用顺序存储(数组)的方式实现的顺序表
位序:数据元素位序是从1开始的,即下标为0的数
特点:不易扩容,易查找,不易插入和删除,为随机存取结构
单链表:每一个结点中包含数据域和指针域,指针域指向下一个结点的地址
每一个结点有自己的地址(包含 一个结点的空间)在这个空间中有两个小块空间,一个空间是存储数据的空间,一个空间是存储指针的空间
特点:易扩容,不易查找,易插入和删除,为非随机存取结构(不能直接找到某个特定的点)
如何在单链表的某一个节点(p)前插入元素呢?(单链表访问不到前一个节点)
删除某个结点:删除结点p,无法使p的前驱指向p的后继,所以直接使p等于p的后继即可
(创建指针L,L=p;p=p.next;free(L)

数据结构学习(考研408)相关推荐

  1. 【专栏必读】王道考研408数据结构万字笔记(有了它不需要你再做笔记了):各章节内容概述导航和思维导图

    其他科目导航 [专栏必读]王道考研408计算机组成原理万字笔记(从学生角度辅助大家理解):各章节导航及思维导图 [专栏必读]王道考研408操作系统万字笔记(从学生角度辅助大家理解):各章节导航及思维导 ...

  2. 计算机考研408复试(面试)问题——数据结构

    计算机考研408复试(面试)问题: 链接: 计算机组成原理 链接: 操作系统 链接: 数据结构 链接: 计算机网络 1.绪论 1.数据类型 原子类型.如 int.bool 结构类型.如struct{- ...

  3. 考研数据结构学习笔记1

    考研数据结构学习笔记1 一.绪论 1.基本概念和术语 2.数据结构三要素 2.1逻辑结构 2.1.1 集合结构 2.1.2 线性结构:一对一 2.1.3 树形结构:一对多 2.1.4 图状结构:多对多 ...

  4. 考研[*数据结构*]学习笔记汇总(全)

    文章目录: 一:预备阶段 二:基础阶段笔记 三:冲刺阶段笔记 四:各章节思维导图 五:题库 来源:王道计算机考研 数据结构 一:预备阶段 之前的数据结构笔记 数据结构--学习笔记--入门必看[建议收藏 ...

  5. 考研数据结构学习与总结笔记---1.1数据结构的基本概念

    考研数据结构学习笔记---王道 数据结构的基本概念 1.数据 2.数据元素 3.数据对象 4.数据类型 5.数据结构 数据结构三要素 1.数据的逻辑结构 2.数据的存储结构 3.数据的运算 回顾与总结 ...

  6. [附源码]java毕业设计基于的考研408课程学习平台

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  7. [附源码]SSM计算机毕业设计基于的考研408课程学习平台JAVA

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  8. 【专栏必读】王道考研408操作系统万字笔记(从学生角度辅助大家理解):各章节导航及思维导图

    其他科目导航 [专栏必读]王道考研408计算机组成原理万字笔记(从学生角度辅助大家理解):各章节导航及思维导图 [专栏必读]王道考研408数据结构万字笔记(有了它不需要你再做笔记了):各章节内容概述导 ...

  9. 【专栏必读】王道考研408计算机组成原理万字笔记和题目题型总结(从学生角度辅助大家理解):各章节导航及思维导图

    其他科目导航 [专栏必读]王道考研408操作系统万字笔记(有了它不需要你再做笔记了):各章节内容概述导航和思维导图 [专栏必读]王道考研408数据结构万字笔记(有了它不需要你再做笔记了):各章节内容概 ...

最新文章

  1. 在Yolov5 Yolov4 Yolov3 TensorRT 实现Implementation
  2. c语言信号机制以及中断
  3. 位移时小心一下运算符的优先级
  4. 1.5 关于这门课-深度学习-Stanford吴恩达教授
  5. lintcode-517-丑数
  6. urllib2的Post和Get请求
  7. 0基础入门前端,会遇到哪些困难?
  8. Oracle数据库日期格式转换操作
  9. 科学精神:谈登月,关键在于讨论技术如何实现
  10. 使用Requests爬取网页图片并保存
  11. 大数据和云计算的区别
  12. uniapp不是自定义导航栏的情况下,点击返回按钮直接返回首页
  13. 高尚品质_心理学家:品德高尚的人一定具有这6点特征
  14. 使用java求解根号2
  15. Anaconda jupyter 错误修复
  16. mac中没有my.cnf文件 mysql
  17. 【语音之家】AI产业沙龙—语音技术在贝壳的应用
  18. 2021年安全员-B证考试题及安全员-B证报名考试
  19. Redis知识点总结归纳
  20. Java 服务器与客户端的简单连接

热门文章

  1. 教你一招快速清理DNS缓存
  2. xxx was compiled with optimization - stepping may behave oddly; variables may not be available.
  3. 为什么更多APP开发者选择穿山甲作为游戏变现平台?
  4. 【初级C语言】代码版式(空行,空格,对齐,长行代码,注释)
  5. Hibernate框架基础——cascade属性
  6. matlab2018a调用python
  7. PCA与2DPCA及2D-2DPCA零基础理解(下)
  8. C++实验题21 破解简单密码
  9. phpmywind 导航函数详解整理中……
  10. 拉格朗日乘数法 和 KTT条件