《数据结构》MOOC陈越 第一章

本文介绍了数据结构的基本概念,包括逻辑结构和物理存储结构,以及算法的定义和评价标准。通过举例说明了数据结构的重要性,如在图书分类中的应用,并讨论了算法的空间复杂度和时间复杂度。同时,给出了最大子列和问题的实例,该问题的时间复杂度为O(n3)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 基本概念

1.1 什么是数据结构

【思考】如何在书架上摆放图书?
找到空的书架,按照类别对图书进行分类,在每一种小类中按书名首字母按序排列。
【结果】被摆了一道

【例2】循环和递归的区别:递归对空间的耗用很大。
解决方法的效率和空间利用效率有关。

【例3】写程序计算给定多项式在给定点x处的值。f(x)=a0+a1x+……+an-1xn-1+anxn(代码见文末)

什么是数据结构?
数据对象的逻辑结构+物理存储结构
+算法

描述数据结构很好的方法:抽象 数据类型
数据类型:数据对象集、数据集合相关联的操作集
抽象:描述数据类型的方法不依赖于具体实现
与存放数据的机器无关
与数据存储的物理结构无关
与实现操作的算法和编程语言无关
只描述数据对象集和操作集是什么,不探讨如何实现。

1.2 什么是算法

一、算法(Algorithm):

  1. 一个有限的指令集;
  2. 接受一些输入(有些情况不需要输入);
  3. 产生输出;
  4. 一定在有限步骤之后终止;
  5. 每一条指令必须:有充分明确的目标,计算机能处理的范围之内,描述应不依赖于任何一门计算机语言或具体实现手段。

二、评判算法好坏的标准:

  1. 空间复杂度 S(n):占用存储单元的长度。
  2. 时间复杂度 T(n):耗费时间的长度。

1.3 应用实例:最大子列和

算法一:暴力求解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值