数据结构与算法
文章平均质量分 72
享受Programming
这个作者很懒,什么都没留下…
展开
-
Dijastra最优路径算法
关于Dijastra算法,零零散散地研究了差不多两天了,基本上弄懂了它的思路和写程序的思路。算法思路不是很难(没理解时还是觉得有点晦涩),代码的实现过程,需要反复推敲和琢磨。目前先写个初级版本(现在暂时只理解到这个程度)算法的思想和方法,各路牛人已经写过很多,小菜鸟就不赘述了,对我自己而言,我觉得下面的思路有助于我的理解,写上来:首先上一个无向图,以及对应的Dijastra算法过程(来源h原创 2015-07-08 21:38:54 · 7502 阅读 · 0 评论 -
哈夫曼树和编码
一,什么是哈夫曼树什么是哈夫曼树呢?哈夫曼树是一种带权路径长度最短的二叉树,也称为最优二叉树。下面用一幅图来说明。它们的带权路径长度分别为:图a: WPL=5*2+7*2+2*2+13*2=54图b: WPL=5*3+2*3+7*2+13*1=48可见,图b的带权路径长度较小,我们可以证明图b就是哈夫曼树(也称为最优二叉树)。二,如何转载 2015-08-05 21:34:37 · 1493 阅读 · 0 评论 -
数据结构和算法系列15 线索二叉树
【出处】http://www.cnblogs.com/mcgrady/p/3320413.html数据结构和算法系列15 线索二叉树上一篇总结了二叉树,这一篇要总结的是线索二叉树,我想从以下几个方面进行总结。1,什么是线索二叉树?2,为什么要建立线索二叉树?3,如何将二叉树线索化?4,线索二叉树的常见操作及实现思路?5,算法实现代码?一,转载 2015-08-16 22:03:40 · 503 阅读 · 0 评论 -
最小生成树算法
一棵带权无向图的生成树代价是该树中所有边权之和,最小代价生成树就是一棵代价最小的生成树。看到一篇讲解非常清晰的文章,转载过来了,确实牛人多啊,后悔自己没有早点开始学习,现在好好努力吧~~【出处】http://www.cnblogs.com/adforce/p/3247437.htmll能看原文就看原文吧,原文写得比较赞!正文 所谓最小生成树,就是在一个具有N个顶点转载 2015-08-13 11:07:37 · 545 阅读 · 0 评论 -
面试中的链表题目
关于链表总结得非常好的一篇文章,看原文吧面试中的各种链表题目【出处】http://blog.csdn.net/luckyxiaoqiang/article/details/7393134链表是最基本的数据结构,面试官也常常用链表来考察面试者的基本能力,而且链表相关的操作相对而言比较简单,也适合考察写代码的能力。链表的操作也离不开指针,指针又很容易导致出错。综合多方面的原因,链表题目转载 2015-08-12 09:25:19 · 284 阅读 · 0 评论 -
存在环的单链表寻找环的入口点
看了这么多文章,觉得这个作者写的寻找环入口是最好理解的,对不起作者,忘记出处的网址了,当时粘到WORD文档里的,如果再次看到了,一定标明出处!! 问题2:若存在环,如何找到环的入口点(即上图中的结点E)? 解答:如图中所示,设链起点到环入口点间的距离为x,环入口点到问题1中fast与low重合点的距离为y,又设在fast与low重合时fast已绕环n周(n>0),且此时low转载 2015-08-12 10:09:53 · 3247 阅读 · 2 评论 -
关于二叉树的顺序存储和链式存储
【出处】http://book.51cto.com/art/200907/134251.htm3.2.2 二叉树的顺序存储结构和链式存储结构(1)二叉树的顺序存储结构按照顺序存储结构的定义,用一组地址连续的存储单元以此自上而下、自左至右存储完全二叉树上的结点元素,即将完全二叉树上编号为i的结点元素存储在如上定义的一维数组中下标为i-1的分量中。对于一般二叉树,则应将其转载 2015-07-28 21:08:05 · 7023 阅读 · 0 评论 -
看图理解单链表的反转
(【出处】http://blog.csdn.net/feliciafay/article/details/6841115分析得很到位的一篇文章,无奈今天状态不佳,不过先存在这里,精神好时过来好好理解一下)如何把一个单链表进行反转?方法1:将单链表储存为数组,然后按照数组的索引逆序进行反转。方法2:使用3个指针遍历单链表,逐个链接点进行反转。方法3:从第2个节点到第N转载 2015-07-28 19:23:50 · 422 阅读 · 0 评论 -
关于查找的总结
【出处】http://www.cnblogs.com/butyoux/archive/2013/01/15/2861291.html五种查找算法总结下列五种查找算法,除顺序查找外,其他算法的思路基本相同: 先对数据按某种方法进行排序,然后使用相应的规则查找。因此,搞清排序算法才是关键。一、顺序查找 条件:无序或有序队列。 原理:按顺序比较每个元素,转载 2015-07-28 20:53:51 · 520 阅读 · 0 评论 -
图的存储
今天集中研究了一下图的各种存储,下面是我学习各路牛人博客后,整理的,有的忘记出处了,实在抱歉(还记得的都写下来了)7.4 图的存储结构图是无法以数据元素在内存中的物理位置来表示元素之间的关系,下面提供5种图的不同的存储结构。7.4.1邻接矩阵(又叫数组表示法)考虑到图由定点和边或弧组成,和在一起比较困难,那就很自然的考虑分两个结构来分别存储。顶点不分大小、主次,所以用一个一维数组来转载 2015-07-15 16:03:15 · 1086 阅读 · 0 评论 -
数据结构——关于二叉树
【转载】写的很好的两篇的文章,详细讲解了二叉树的基本概念,性质,以及各种对应的操作。详细的解释和代码!二叉树http://www.cnblogs.com/Anker/archive/2013/01/27/2878594.html二叉查找树http://www.cnblogs.com/Anker/archive/2013/01/28/2880581.html转载 2015-07-04 22:17:53 · 255 阅读 · 0 评论 -
从头到尾彻底解析Hash 表算法
【参考链接】感觉写得挺好的http://blog.csdn.net/v_JULY_v/article/details/6256463(第三部分暂时未看)转载 2015-07-02 12:44:43 · 286 阅读 · 0 评论 -
字符串匹配的KMP算法
迄今为止,看到的讲KMP算法最容易懂的文章KMP算法另一篇更有深度的,适合更深入研究的吧从头到尾彻底理解KMP【注】两篇文章都值得好好看看,认真理解字符串匹配是计算机的基本任务之一。举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?许多算法可以完成这个任务,Knuth-Morris转载 2015-09-16 14:32:13 · 303 阅读 · 0 评论