【数据结构】 绪论

一、基本概念和术语

  1. 数据
  2. 数据元素(数据的基本单位,由若干数据项组成)
  3. 数据对象(具有相同性质的数据元素的集合,是数据的子集)
  4. 数据类型(一个值的集合和定义在此集合上的一组操作的总称):原子类型、结构类型、抽象数据类型。
  5. 数据结构(相互之间存在一种或多种特定关系的数据元素的集合),如先后关系。

二、数据结构三要素

算法的设计取决于逻辑结构,算法的实现取决于存储结构。   

  1. 逻辑结构
  2. 存储结构
  3. 数据的运算
  •  逻辑结构与数据存储无关,独立于计算机。 包括线性结构和非线性结构。线性结构主要指“一对一”,典型是线性表,及受限线性表(队列、栈)、推广线性表(数组、多维数组);非线性结构主要指“多对多、一对多”,有集合、树形结构、图状结构等。
  • 存储结构 是数据结构在计算机中的表示(映像),也叫物理结构。它包括数据元素的表示(值)和关系的表示。存储结构包括:顺序存储、链式存储、索引存储和散列存储。
  • 数据运算包括数据的定义和实现。定义——逻辑结构——功能,实现——存储结构——具体操作。

三、算法和算法评价

1、算法概念:对特定问题的求解步骤的一种描述,是指令的有限序列。

2、算法的特性:   

  • 有穷性;
  • 确定性;
  • 可行性;
  • 输入;
  • 输出。

3、好的算法还应考虑以下特性:

  • 正确性;
  • 可读性;
  • 健壮性;
  • 高效率与低存储。    

四、算法效率度量

1、时间复杂度

(1)算法中基本运算的执行次数的数量级作为该算法的时间复杂度

T(n)=O(f(n))    是问题规模n的函数

(2)最坏时间复杂度、平均时间复杂度、最好时间复杂度。

(3)计算时,有加法规则和乘法规则。

2、空间复杂度

算法所需的空间,只需要分析除输入和程序之外的额外空间。

 S(n)=O(g(n))   是问题规模n的函数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值