数据结构听课笔记210413

@数据结构4月13日第一更

数据结构绪论部分

书架上书的摆放

我们对主要是对新书怎么插入以及怎么查找特定的书籍进行说明

  1. 第一种情况 ,如果我们随便放,那么当我们查找特定书籍时会非常困难,特别是当书籍数量巨大时;
  2. 第二种情况 ,我们可以按照书名的拼音字母顺序进行摆放,在查找时,我们可以采取二分查找的方法进行查找,但还是存在着一些查找和后续插入新书的困难;
  3. 第三种情况 ,我们可以把书架划分成几个区域,每个区域放特定类的书,每一类书按照拼音子字母顺序摆放,这样也会存在空间如何分配的问题;

两个要点

  1. 笔记一 ,解决问题方法的效率跟时间和空间以及算法的巧妙程度有关;
  2. 笔记二 ,C语言有clock()函数,可以捕捉从程序开始运行到clock()函数被调用所需要的时间,这个时间的单位是clock tick,即时钟打点。常数CLK_TCK机器时钟每秒所走的机器打点数。

抽象数据类型

1.与存放数据的机器无关;
2.与数据存储的物理结构无关;
3.与实现操作的算法和编程语言无关。
4.tips,在程序最前面将数据类型定义好,后面避免替换的麻烦。
例子:
#define ElementType int/double…
在后面程序中可以一直用ElementType。

算法的定义

1.一个有限指令集
2.接受一些输入(有些情况下不需要输入)
3.产生输出
4.一定在有限步骤之后终止
5.每一条指令必须(1)有充分明确的目标,不能有歧义(2)计算机能处理的范围内(3)描述不依赖于任何一种计算机语言和具体实现手段
衡量算法的优劣:时间复杂度和空间复杂度
其实我们最关心的是算法最坏情况下的复杂度
复杂度的渐进表示方法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值