数据结构复习笔记(一)绪论

1.1数据结构的定义

  1. 数据对象在计算机中的组织方式有 1:1   1:n   n:n
    逻辑结构->集合、线性结构(1:1)、树形结构(1:n)、图形结构(n:n)
    存储结构
  2. 数据对象必定与一系列加在其上的操作相关联
  3. 算法: 完成这些操作所用的方法

存储结构的几种优缺点

  1. 顺序存储结构:
    优点:存储效率高,没有占用额外的空间(逻辑上相邻,物理上也相邻)
    缺点:不便于数据修改,插入或删除操作需移动一系列元素
  2. 链式存储结构:
    优点:便于数据修改,插入或删除元素仅需修改相应结点的指针域(逻辑相邻元素,物理存储位置不一定相邻)
    缺点:与顺序相比,存储空间利用率低,因为分配的存储单元有部分用来存储结点之间的逻辑关系
  3. 索引存储结构:
    特点:索引存储结构是用结点的索引号来确定结点存储地址
    优点:检索速度快
    缺点:缺点是增加了附加的索引表,会占用较多的存储空间
  4. 哈希(散列)存储结构
    特点:用散列法存储的线性表被称为哈希表,使用的函数被称为散列函数或者哈希函数,f(k)被称为散列地址或者哈希地址。通常情况下,散列表的存储空间是一个一维数组,而其哈希地址为数组的下标
    优点:查找速度快
    缺点:只存储元素的数据,不存储元素之间的逻辑关系

算法(Algorithm)

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

  1. 算法的五个特性:有穷性,确定性,可行性,输入和输出。
  2. 算法的四个特征:正确性,可读性,健壮性,效率与地存储需求
  3.  

算法的时间复杂度和空间复杂度

 

1.常用的时间复杂度比较关系为

O(1) <= O(log2(n)) <= O(n) <= O(nlog2(n)) <= O(n2) <= O(n3) ..... <=O(nk) <= O(2(n))

2.具体步骤

    1)确定算法中的基本操作以及问题的规模。

    2)根据基本操作执行情况计算出规模n的函数f(n),并确定时间复杂度为T(n)=Of(n)中增长最快的项/此项的系数。

一般依照使得基本操作执行次数最多的输入来计算四件复杂度,即将最坏的情况最为算法时间复杂度的度量。

时间复杂度分析与空间复杂度分析详见课本

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值