数据结构:绪论

基本概念

  • 数据:数据是可被计算机识别并加工处理的对象。
  • 数据元素:数据元素是由数据组成的具有一定意义的基本单位
  • 数据项:是组成数据元素的、不可分割的最小单位。
  • 数据结构:由某一数据对象及该对象中所有数据元素之间的关系组成的。

数据结构

  • 数据的逻辑结构

    • 线性结构
    • 树形结构
    • 图结构
    • 集合结构
  • 数据的存储结构

    • 顺序存储结构 (数组)
    • 链式存储结构 (链表)
  • 数据的运算:增、删、改、查

  • 数据类型:整形,字符型,指针等

  • 抽象数据类型

    • 数据封装

    • 信息隐蔽

算法

算法概念

  • 五个特征
    • 输入:一个算法有 0 个或多个输入。
    • 输出:一个算法产生一个或多个输出,作为算法运算的结果。
    • 可行性:算法的每一个步骤都可以通过已经实现的基本运算来实现。
    • 确定性:算法的每一个步骤都必须有确切的含义,不会产生二义性。
    • 有穷性:算法必须能在执行有穷步之后终止。
  • 四个衡量标准
    • 正确性
    • 可读性
    • 健壮性
    • 高效性
  • 算法的时间复杂度
    • 常见时间复杂度:O(1)<O(log2 n)<O(n)<O(nlog2 n)<O(n2)<O(n3) 。
    • 最坏、最好和平均情况时间复杂度
      • 最好情况:待搜索的元素 x 正好是第一个元素
      • 最坏情况:待搜索的元素 x 是最后一个元素或是不在数组中
      • 平均情况:需要多次在数组中查找元素,以相等的概率查找每个数组元素
  • 算法的空间复杂度
    • 固定部分:主要包括程序代码、常量、简单变量等所占的空间。
    • 可变部分:算法执行所需的额外空间,如递归栈所用的空间。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值