数据结构与算法——基本概念和算法(软设备考版)

1. 数据元素、数据项

数据元素是基本单位,数据项是最小单位。

2. 数据结构

存在一种或多种特定关系的数据元素的集合。

3. 数据结构的三要素

逻辑结构、物理结构(存储结构)、数据的运算。

4. 逻辑结构

  • 集合、线性结构、树形结构、图状结构(网状结构)。
  • 集合:集合内的元素没有其他关系。
  • 线性结构:数据元素之间是一对一的关系。除了第一个元素之外,所有元素都有唯一的前驱元素;除了最后一个元素,所有元素都有唯一的一个后继元素。
  • 树形结构:数据元素之间是一对多的关系。
  • 网状结构:数据元素之间是多对多的关系。

5. 物理结构

  • 顺序存储、链式存储、索引存储、散列存储。
  • 顺序存储:把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中。
  • 链式存储:逻辑上相邻的元素物理位置上可以不相邻
  • 索引存储:在存储元素信息的同时,建立附加的索引表。
  • 散列存储:根据元素的关键字直接计算出该元素的存储地址(哈希存储)。

6. 算法的特性

  • 有穷性、确定性、可行性、输入、输出。
  • 有穷性:一个算法必须在执行有穷步之后结束,且每一步可在有穷时间内完成。
  • 确定性:算法中每条指令有确切的含义,对于有相同的输入只能做相同的输出。
  • 可行性:描述的操作都可以通过已经实现的基本运算执行有限次完成。
  • 输入、输出:一个算法可以有零个或多个输入,但输出有一个或多个。

7. 算法的度量

  • 算法效率的度量由时间复杂度空间复杂度来决定。
  • 时间复杂度:例如t1(n)=3n+3, t2(n)=n^2+n+100, t3(n)=n^3+n^2+n+100 t1(n)=O(n), t2(n)=O(n^2), t3(n)=O(n^3)
  • 空间复杂度:只需关注存储空间的大小和问题规模相关的变量。
  • O(1) < O(\log_2{n}) < O(n) < O(n\log_2{n}) <O(n^2) < O(n^3) < O(2^n) < O(n!) < O(n^n)

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值