第一章、绪论

1.1数据结构的研究内容

  • 数据结构主要研究非数值计算问题,研究如何合理的组织数据、高效地处理数据。
  • 非数值计算问题:无法用数学方程建立数学模型。
  • 程序 = 算法 + 数据结构
  • 数据结构是一门研究非数值计算程序设计中的操作对象,以及这些对象之间的关系和操作的学科。

1.2基本概念与术语

1.2.1 数据----数据元素----数据项----数据对象

  • 数据:客观事物的总称。所有能输入计算机并能被计算机程序处理的符号的总称。
  • 数据元素:数据的基本单位(不是最小),通常看作一个整体。
  • 数据项:组成数据元素的不可分割、具有独立含义的最小单位。
  • 数据对象:性质相同的数据元素的集合。

(从某种意义上讲,数据、数据对象是集合,数据元素是集合元素)

1.2.2数据结构

  • 数据结构:是具有一种或多种特定关系的数据元素的集合。
  • 逻辑结构:由逻辑关系确定数据关系,与数据的存储无关,独立于计算机。
    • 线性:线性表、栈、队列、串、数组、广义表。
    • 非线性:树、图、集合结构。
  • 存储结构
    • 顺序
    • 链式

1.3数据类型与抽象数据类型

  • 数据类型:值集+定义在值集上的操作。
  • 抽象数据类型:解决问题的数学模型+操作。
  • 抽象数据类型仅是一个模型的定义,并不涉及模型的具体实现,因此描述中涉及的参数不必考虑具体数据类型。

1.4算法与算法分析

1.4.1算法的定义及特性

  • 定义:为了解决某类问题而规定的有限长的操作序列。
  • 特性:有穷性、可行性、确定性、输入(>=0)、输出(>=1)。

1.4.2算法的优劣判断

  • 正确性、可读性、健壮性、高效性。

1.4.3算法的时间复杂度

  • 问题规模:算法求解问题输入量的多少。
  • 语句频度:一条语句重复执行的次数。
  • 渐进时间复杂度--增长率--最好、最坏时间复杂度、平均时间复杂度。

1.4.4算法的空间复杂度

  • 本身占有的空间--辅助空间。
  • 原地工作:辅助空间所需相对于输入量是个常数,则该算法称为原地工作。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值