[NEFU 数据结构] 第 1 章 绪论 知识点整理

Posted 鱼竿钓鱼干

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[NEFU 数据结构] 第 1 章 绪论 知识点整理相关的知识,希望对你有一定的参考价值。

[NEFU 数据结构] 第 1 章 绪论 知识点整理

阅读须知

  • 需求指向:
    此博客用于应付NEFU数据结构考试,基于题目进行整理,不适合想深入学习数据结构与算法艺术的同学。

  • 前置知识:
    C语言

  • 参考资料:
    数据结构C语言版|第二版 严蔚敏
    数据结构C语言版习题解析与实验指导|第二版 严蔚敏

  • 推荐博客
    [NEFU]数据结构 知识点整理和代码实现

一、思维导图

在这里插入图片描述

二、考点

1.2 基本概念和术语

  • 数据:客观事物的符号表示

  • 数据元素:数据的基本单位,通常作为整体考虑和处理

  • 数据项:组成数据元素,有独立含义的,不可分割的最小单位

  • 数据对象:数据元素的集合

  • 数据结构:
    带结构的数据元素的集合,是数据元素的组织形式
    包括逻辑结构存储结构两个层次

  • 逻辑结构:
    与数据存储无关,独立于计算机
    两个要素:数据元素,关系
    常见逻辑结构:
    在这里插入图片描述

  • 存储结构(物理结构):分为 顺序存储结构,链式存储结构

  • 顺序存储结构:
    连续存储区域
    数据之间逻辑关系由存储位置表示

  • 链式存储结构:
    无需连续存储区域
    需要附增指针字段
    空间使用更灵活
    物理地址和逻辑地址不同
    数据之间逻辑关系用指针表示

  • 数据类型:一个值的集合和定义在这个值上操作的总称

  • 抽象数据类型:数据对象、数据对象上关系集合、数据对象基本操作集合

1.3 抽象数据类型的表示和实现

  • 抽象数据类型独立利于具体实现,将数据和操作封装到一起
  • 在 C++ 中,类的声明表示抽象数据类型,类的实现来实现抽象数据类型
  • 抽象数据类型相当于在概念层上描述问题,类相当于在实现层上描述问题

1.4 算法和算法分析

  • 算法的定义
    为了解决某类问题的有限长的序列
    有穷性:有穷步后结束,每步有穷时间内完成
    确定性:不产生二义性
    可行性:所有操作都可以通过已实现的基本运算执行有限次来实现
    输入:零个或多个输入
    输出:一个或多个输出

  • 评价标准
    正确性:合理数据输入下,有限的运行时间内得到正确的结果
    可读性:便于人们理解和交流
    健壮性:对非法数据有合理反应和处理
    高效性:时间复杂度和空间复杂度(两个都要)

  • 算法时间复杂度
    问题规模:算法求解问题的输入量
    语句频度:一条语句重复执行的次数
    大O计数法:忽略所有低次幂和最高次幂的系数
    在这里插入图片描述 O ( 1 ) < O ( l o g 2 N ) < O ( N ) < O ( N l o g 2 N ) < O ( N 2 ) < O ( N 3 ) < O ( 2 N ) O(1)<O(log_2N)<O(N)<O(Nlog_2N)<O(N^2)<O(N^3)<O(2^N) O(1)<O(log2N)<O(N)<O(Nlog2N)<O(N2)<O(N3)<O(2N)
    常数阶:算法中语句频度是个常数,即使再大,算法复杂度都是O(1)
    最好时间复杂度,最坏时间复杂度,平均时间复杂度
    时间复杂度取决于:问题的规模,处理数据的初态

  • 算法空间复杂度
    若算法执行时所需的辅助空间相对于输入数据量是个常数,则称这个算法原地工作,辅助空间为O(1)

  • 时间复杂度和空间复杂度没有直接联系

以上是关于[NEFU 数据结构] 第 1 章 绪论 知识点整理的主要内容,如果未能解决你的问题,请参考以下文章

[NEFU 数据结构] 第 2 章 线性表 知识点整理

数据挖掘导论 第1章 绪论

微机手册

一起来读西瓜书:第一章 绪论

NEFU 计算机网络学习目录

NEFU 计算机网络学习目录