数据结构-绪论

绪论

1.数据结构的基本概念

  • 数据:信息的载体,描述客观事物属性的数、字符以及所有能输入到计算机中并被计算机程序识别和处理的符号集合。
  • 数据对象:例如一个表格
  • 数据元素:表的一条数据
  • 数据项:一条数据的

数据类型(集合+操作):

  • 原子类型:值的类型+操作 char int float
  • 结构类型:结构的集合+操作 list map set
  • 抽象数据类型DAT:数据对象+数据关系+操作

数据不是孤立的,他们存在着某种关系,这种相互的关系我们叫做结构
数据结构:是相互之间存在的一种或多种特定关系数据元素的集合。
数据结构的三要素:逻辑结构存储结构数据的运算

逻辑结构

  • 线性结构
  • 非线性结构:集合、树形结构(一对多)、图状结构(多对多)

存储结构

  • 顺序存储:数组
  • 链式存储:链表
  • 索引存储:索引表(关键字、关键字地址)、数据表
  • 散列存储:通过函数计算地址

数据的运算

运算包括运算的定义和实现。
定义针对逻辑结构
运算针对存储结构

2.算法的基本概念

算法:对特定问题求解步骤的一种描述,它是指令的有限序列,其中的每条指令表示一个或多个操作。

  • 有穷性:执行有穷步之后结束,每一步都在有穷时间内完成。
  • 可行性:可行的,描述的操作都是基本运算执行有限次来实现的。
  • 确定性:每一条指令都有确定的含义,同样的输入有同样的输出。
  • 输入:0或多个
  • 输出:1个或多个输出

算法效率的度量

  • 正确性:
  • 可读性:
  • 健壮性:输入非法数据时,算法能使用的做出反应或进行处理。
  • 效率与存储量
时间复杂度**

语句频度:语句执行的次数。
T(n):所有语句的频度之和
时间复杂度:T(n) = O(f(n)),其中O表示T(n)与f(n)在n趋于无穷时为同阶无穷大。
最坏时间复杂度、最好时间复杂度、平均时间复杂度。
例如:
T(n) = 1 + n + n² = O(n²)
在这里插入图片描述

空间复杂度

S(n) = O(g(n))
算法原地工作是指需要的存储空间为常量 O(1)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值