考研408数据结构 · 开端

Posted 有理想、有本领、有担当的有志青年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了考研408数据结构 · 开端相关的知识,希望对你有一定的参考价值。

引言

数据结构在学什么

  1. 如何把问题信息化
  • 场景:现在需要将1000本不同类型的书摆放到图书馆的书架上。
  • 研究问题:采取什么办法摆放?
  • 方法有:
    ① 不管不顾从头到尾一本一本放
    ② 按照图书类型分门别类地摆放
  1. 如何高效处理问题
  • 在上一步摆放的基础上,如何摆放新的图书?
  • 如何快速找到,并借走一本书?
  • 如何快速找到位置。并归还一本书?

数据结构要求我们研究数据(如图书)之间的关系(如相同类型),找到一种方法存储数据,并能高效地对数据实现增删改查

对C语言掌握要求

  1. 分支(if/else)循环(for、while)
  2. 数组
  3. 函数
  4. 指针、地址
  5. struct结构体

数据结构三要素

逻辑结构

线性结构(一对一)

树形结构(一对多)

图结构(多对多)

数据运算

基于某种逻辑结构,定义基本运算
以线性结构为例:
在第i个位置插入新的数据元素
删除第i个位置的数据元素
修改第i个元素
查找是否存在某个数据元素等于指定值

存储结构

顺序存储: 用数组
链式存储: 用链表
索引存储: 引入索引表(关键字 | 地址 )
散列存储: 用哈希表

程序 = 数据结构 + 算法

什么是算法?

解决问题的步骤

评价算法

时间复杂度

  • 只看最深一层中循环中某条语句执行次数
  • 只看次数中n的最高阶数



只考虑最坏时间复杂度和平均时间复杂度

空间复杂度(考察频率相比较低)

  • 只需关注与问题规模相关的变量
  • 只看n的最高阶数
  • 对于递归算法,一般情况下 空间复杂度 = 递归调用的深度

以上是关于考研408数据结构 · 开端的主要内容,如果未能解决你的问题,请参考以下文章

(王道408考研数据结构)第一章绪论-第一节:数据结构的基本概念三要素逻辑结构和物理结构

(王道408考研数据结构)第七章查找-第二节2:二分查找及其判定树

(王道408考研数据结构)第七章查找-第二节3:分块查找

(王道408考研数据结构)第七章查找-第二节3:分块查找

(王道408考研数据结构)第三章栈和队列-第四节:特殊矩阵压缩方式

(王道408考研操作系统)第二章进程管理-第三节9:读者写者问题