数据结构
YYYY-MM-DD
这个作者很懒,什么都没留下…
展开
-
数据结构之常用排序算法
参考博客:http://blog.csdn.net/gane_cheng/article/details/52652705排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为...转载 2018-03-05 10:43:55 · 193 阅读 · 0 评论 -
数据结构之查找算法
阅读目录1. 顺序查找2. 二分查找3. 插值查找4. 斐波那契查找5. 树表查找6. 分块查找7. 哈希查找 查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找。本文简单概括性的介绍了常见的七种查找算法,说是七种,其实二分查找、插值查找以及斐波那契查找都可以归为一类——插值查找。插值查找和斐波那契查找是在二分查找的基础上的优化查找算法。...转载 2018-03-05 14:57:11 · 260 阅读 · 0 评论 -
数据结构之哈夫曼树及哈夫曼编码
哈夫曼树和哈夫曼编码 当树中的节点被赋予一个表示某种意义的数值,我们称之为该节点的权。从树的根节点到任意节点的路径长度(经过的边数)与该节点上权值的乘积称为该节点的带权路径长度。树中所有叶节点的带权路径长度之和称为该树的带权路径长度(WPL)。当带权路径长度最小的二叉树被称为哈夫曼树,也成为最优二叉树。 如下图所示,有三课二叉树,每个树都有四个叶子节点a,b,c,d,分别取带权7...转载 2018-03-06 11:56:15 · 382 阅读 · 0 评论 -
数据结构之拓扑排序
一、什么是拓扑排序在图论中,拓扑排序(Topological Sorting)是一个有向无环图(DAG, Directed Acyclic Graph)的所有顶点的线性序列。且该序列必须满足下面两个条件:每个顶点出现且只出现一次。若存在一条从顶点 A 到顶点 B 的路径,那么在序列中顶点 A 出现在顶点 B 的前面。有向无环图(DAG)才有拓扑排序,非DAG图没有拓扑排序一说。例如,下面这个图: ...转载 2018-03-21 17:02:14 · 1213 阅读 · 0 评论 -
数据结构之最短路径——迪杰斯特拉
本章介绍迪杰斯特拉算法。和以往一样,本文会先对迪杰斯特拉算法的理论论知识进行介绍,然后给出C语言的实现。后续再分别给出C++和Java版本的实现。目录 1. 迪杰斯特拉算法介绍 2. 迪杰斯特拉算法图解 3. 迪杰斯特拉算法的代码说明 4. 迪杰斯特拉算法的源码转载请注明出处:http://www.cnblogs.com/skywang12345/更多内容:数据结构与算法系列 目录迪杰斯特拉算法介...转载 2018-03-21 17:27:59 · 1147 阅读 · 0 评论 -
数据结构与算法——大牛博客
1、http://www.cnblogs.com/skywang12345/ 2、http://blog.csdn.net/heroacool/article/details/510148243、https://www.61mon.com/index.php/archives/194/原创 2018-03-21 17:31:13 · 3295 阅读 · 0 评论 -
快速排序之理论证明
快速排序算法的时间复杂度分析[详解Master method] 经常听人谈起各种排序算法的时间复杂度,这个是O(n2)的,那个是O(n)的,这些人讲起来可谓滔滔不绝,但是你停下来问问他为什么这个是这个复杂度,他是怎么算出来的?往往没几个人能说出来。这个是一个浮躁的社会,大家都追求速度,到处复制,粘贴代码,拿人家的代码跑一便,就说自己会了这个,会了那个.. 也许有人觉得算法分析的太深没有用,但是笔者...转载 2018-04-13 17:39:27 · 377 阅读 · 0 评论