数据结构与算法 复习笔记 第一章 概论:问题求解/数据结构/算法/算法分析

本文是《数据结构与算法》复习笔记的第一章,介绍了数据结构的基本概念,包括逻辑结构、存储结构和运算,以及算法设计和分析的基础知识。讨论了数据结构的逻辑结构分类,并强调了抽象数据类型在算法设计中的作用。还涵盖了算法的特性、设计方法如分治、递归、贪心和动态规划,以及算法分析中的渐进分析法。
摘要由CSDN通过智能技术生成

教材为高等教育出版社《数据结构与算法》一书,作者张铭等,撰写该笔记的目的:

  1. 数据结构考得太差,利用寒假查漏补缺
  2. 练习双拼码字
  3. 假期太长太无聊 希望能坚持下去,一天一章。

不适合拿来当学习材料 ,因为我掌握的都没写,可以复习时查漏补缺。

正文:

数据结构(data structure )描述的是按照一定逻辑关系组织起来的待处理数据元素的表示及其相关操作,涉及数据的逻辑结构、存储结构和运算。

从数学上看,树形结构和图结构的基本区别就是“每个节点是否仅仅从属于一个直接前驱”。而线性结构和树形结构的基本区别是“每个节点是否仅有一个直接后继”。

Niklaus Wirth :“程序等于数据结构加算法”

用户自定义的类型为抽象数据类型。

模块分为模块式和模块体,模块式定义外不可见的运算接口,模块体则定义对外不可见的私有数据和运算通过接口和实现的分离,模块提供了用户自定义类型的手段,达到数据抽象、信息隐蔽的目的。

实际上模块提供了一种抽象数据类型实现的手段,从更高级别的抽象去讨论和使用数据结构和算法。

一般而言,抽象数据类型可以用三元组表示:
(D,R,P),也即

ADT抽象数据类型名{
抽象对象D:<数据对象的定义>
数据关系R:<数据关系的定义>
基本操作P:<基本操作的定义>
}ADT抽象数据类型名

算法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值