第1章 数据结构绪论-V1

1.1 开场白

  • 希望大家感受编程之美。

1.2 你数据结构怎么学的?

  • 举个例子🌰,学不好数据结构,会很麻烦。

1.3 数据结构起源

  • 研究非数值计算程序问题中的操作对象,以及他们之间关系和操作等相关问题的学科。

1.4 基本概念和术语

  • 计算机是锅,数据是米

1.4.1 数据

  • 数据

描述客观事物的符号;
计算机中可以操作的对象;
能被计算机识别,并输入给计算机处理的符号集合。

  • 特性
  1. 可以输入到计算机中
  2. 能被计算机程序处理

1.4.2 数据元素

  • 数据元素

组成数据的,有一定意义的基本单位,在计算机中通常作为整体处理。

1.4.3 数据项

  • 数据项:一个数据元素可以由若干个数据项组成。

数据项是数据不可分割的最小单位。

1.4.4 数据对象

  • 数据对象:性质相同的数据元素的集合,是数据的子集。

1.4.5 数据结构

  • 数据结构:相互之间存在的一种或多种特定关系的数据元素的集合。

1.5 逻辑结构和物理结构

  • 视点不同,数据结构分为逻辑结构和物理结构。

1.5.1 逻辑结构

  • 逻辑结构:数据对象中数据元素之间的相互关系。
    1. 集合机构

集合结构中数据元素同属一个集合,没有其他关系。

    1. 线性结构

线性结构中的数据元素是一对一的关系。

    1. 树形结构

树形结构中的数据元素之间存在一种一对多的层次关系。

    1. 图形结构

图形结构的数据元素是多对多的关系。

1.5.2 物理结构

  • 物理结构:是指数据的逻辑结构在计算机中的存储形式。
    1. 顺序存储结构。

顺序存储结构:把数据元素放在地址连续的存储单元,其数据间的逻辑关系和物理关系是一致的。

    1. 链式存储结构。

链式存储结构:把数据元素存放在任意存储单元里,存储单元可以连续也可以不连续。

  • 逻辑结构是面向问题的,物理结构是面向计算机的。目标就是将数据及逻辑关系存储到计算机内存中。

1.6 抽象数据类型

1.6.1 数据类型

  • 数据类型:是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。
  • 数据类型分类

原子类型:不可以再分解的基本类型,包括整型、实型、字符型等。
结构类型:由若干个类型组合而成,是可以再分解的。例如,整型数组是由若干整型数据组成的。

  • 抽象:是指取出事物具有的普遍性本质。

1.6.2 抽象数据类型

  • 抽象数据类型(Abstract Data Type, ADT):是指一个数学模型及定义在该模型上的一组操作。
  • 描述抽象数据类型的标准格式:
ADT 抽象数据类型名
Data
  数据元素之间逻辑关系的定义
Operation
  操作 1
    初始条件
    操作结果描述
  操作 2
    ......
  操作 n
    ......
endADT

1.7 总结回顾

  • 包含关系:数据>数据对象>数据元素>数据项
  • 逻辑结构:集合结构,线性结构,树形结构,图形结构。
  • 物理结构:顺序存储结构;链式存储结构。

1.8 结尾语

  • 学会数据结构需要努力。
    原文作者:浩宇星
    原文地址: https://www.jianshu.com/p/f4344535f266
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞