阅读裘宗燕老师的《数据结构与算法:python语言描述》的课件所记笔记 一、数据存储、检索和字典 存储和检索是计算机中最重要最基本的工作 基于关键码的数据存储和检索 关键码指数据项的某种(可能具有唯一性的)特征,可以是数据内容的组成部分,也可以是专门为数据检索建立的标签 支持这种操作的数据结构,通常称为字典、查找表或映射 二、字典 最主要同时也是最频繁的操作是检索 检索效率 检...

Continue reading

阅读裘宗燕老师的《数据结构与算法:python语言描述》的课件所记笔记 一、图 图是一种数学结构,数学里有‘图论’,研究这种拓扑结构 数据结构课程把图看成一类复杂数据结构,用于表示具有各种复杂关系的数据集合。 重点算法 图的深度优先搜索与广度优先搜索 最小生成树的Prim 求单源最短路径的Dijkstra算法 求所有顶点对之间最短路径的Floyd算法 拓扑排序 关键路径 1.基本概...

Continue reading

阅读裘宗燕老师的《数据结构与算法:python语言描述》的课件所记笔记 七、二叉树遍历算法 1.递归形式程序实现 先根序: def preorder(t, proc): if t is None: return proc(t.data) preorder(t.lleft, proc) preorder(t.right, proc) 实例:用括号的前缀形式输出二叉树,空子树输出符号...

Continue reading

阅读裘宗燕老师的《数据结构与算法:python语言描述》的课件所记笔记 四、二叉树应用 1.表达式树 基本运算对象作为叶结点的数据 运算符作为分支结点的数据,其两棵树是它的运算对象,可以是基本运算对象,也可以是作为运算对象的两个表达式 例如表达式3 * (2 + 5): ['*', [3, [], []], ['+', [2, [], []], [5, [], []]]] 简化为:['*...

Continue reading

阅读裘宗燕老师的《数据结构与算法:python语言描述》的课件所记笔记 一、复杂数据结构 非线性,元素之间的关系不是一对一的,存在更复杂的关系 n个元素的数据结构,元素间的最远距离不是n,可能小得多 1.问题 可以表示数据之间更复杂的关系 数据的组织方式有更多选择 可能存在更多不同的实现方法 2.处理方法可能变得复杂 需要借助一些辅助数据结构,例如栈和队列 二、树形结构 树形...

Continue reading

oucb

闻风观雨,静听无声。让生活与自己都变得有趣