数据结构与算法分析
文章平均质量分 94
以《数据结构与算法分析--C语言描述》这本书为参照进行学习和笔记记录
HumanFlag
这个作者很懒,什么都没留下…
展开
-
10种排序算法总结及c++代码
排序算法总结1.冒泡排序冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。算法描述比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;重复步骤1~3,直原创 2021-08-22 17:18:52 · 1822 阅读 · 0 评论 -
【数据结构与算法分析】散列相关知识点
1 散列的概念散列是一种用于以常数平均时间执行插入、删除和查找的技术。但是,那些需要元素间任何排序信息的操作将不会得到有效的支持。理想的散列表数据结构只不过是一个包含关键字的具体固定大小的数组。我们把表的大小记作TableSize,每个关键字被映射到从0到TableSize-1这个范围中的某个数,并且被放到适当的单元总。这个映射就叫做散列函数(hash function),理想情况下他应该运算简单并且应该保证任何两个不同的关键字映射到不同的单元。不过这是不肯的,因为单元的数目是有限的,而关键字实际上是用原创 2020-07-15 20:48:37 · 528 阅读 · 0 评论 -
【数据结构与算法分析】树的知识点介绍
1 树的的基础知识一棵树是一些节点的集合。这个集合可以是空集;若非空,则一棵树由称做根(root)的节点r以及0个或多个非空子树T1,T2,...,TkT_1,T_2,...,T_kT1,T2,...,Tk组成.这些子树中每一颗的根都被来自根r的一条有向的边所连接。树的基础概念:深度:任意节点nin_ini的深度为从根到nin_ini惟一路径的长。因此,根的深度为0。高度:nin_ini的高度是从nin_ini到一片树叶的最长路径的长。因此所有的树叶的高都是0.一棵树的高等于它的根原创 2020-07-10 21:35:52 · 570 阅读 · 0 评论