中介者模式:用一个中介者对象来封装一系列对象的交互.中介者使各个对象不需要显式的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互. 中介模式优缺点: 优点:Mediator的出现减少了各个Colleague的耦合,使得可以独立的改变和复用各个Colleague和Mediator类,由于对 ...
分类:
其他好文 时间:
2017-06-22 22:55:53
阅读次数:
130
文章参考《大话数据结构》 1.基本概念 查找表:是由同一类型的元素构成的集合 关键字:数据元素中某个数据项的值 静态查找表和动态查找表 静态查找表:查询某个“特定的”数据元素是否在查找表中 查询某个“特定的”数据元素和各种属性 动态查找表:在查找的过程中同时插入查找表中不存在的数据元素,或者从查找表 ...
分类:
其他好文 时间:
2017-06-22 22:55:26
阅读次数:
171
一年复一年,两年前的今天刚从指导老师手中接过毕业证书,仿佛就发生在昨天。多希望这一切不要走得太快,即使未来总会都许多新鲜的实物替代。 回顾这一年,也想不出学了什么,但感觉改过的BUG肯定不少。对于我种几乎没有什么天赋的程序员,成长还是挺艰难的,我能保证的就是不懂得东西多查阅资料。下面这个来自 csd ...
分类:
其他好文 时间:
2017-06-07 20:51:02
阅读次数:
173
从上大学开始对数据结构一直处于膜拜观望的状态,很清楚这个东西很重要,但就是学不会,我们学校使用的教材是严蔚敏的数据结构,大家都说这是一本很经典的书,我一直感觉不到它经典到哪,究其原因是看不懂,书中使用了大量的伪代码,全尼玛讲的思想,看着都头疼。对于此类书我只想说一个字,去你的吧。所以大学四年我尽了最 ...
分类:
其他好文 时间:
2017-06-04 18:23:38
阅读次数:
122
第七章 图 图的遍历 从图中某一个顶点出发访遍图中其余顶点,且使每一个顶点仅被访问一次,这一过程就叫做图的遍历(Traversing Graph)。 深度优先遍历(Depth First Search, DFS) 深度优先遍历(类似树的前序遍历)从图中某个顶点 v 出发,访问此顶点,然后从 v 的未 ...
分类:
其他好文 时间:
2017-06-01 17:53:00
阅读次数:
186
第七章 图 图的存储结构 图不能用简单的顺序存储结构来表示。 而多重链表的方式,即以一个数据域和多个指针域组成的结点表示图中的一个顶点,尽管可以实现图结构,但是会有问题,比如若各个顶点的度数相差很大,按度数最大的顶点设计结点结构会造成很多存储单元的浪费,而若按每个顶点自己的度数设计不同的顶点结构,又 ...
分类:
其他好文 时间:
2017-06-01 17:48:29
阅读次数:
265
内容参考《大话数据结构》 什么是数据结构 数据结构是数据元素之间存在的一种或多种关系的集合 逻辑结构 1.集合结构 集合内各数据元素平等,只是属于一个集合 集合中的数据元素都是无序的 集合中的数据元素只能出现一次{1,2,3},而不是{1,2,1} 例如java中的set,python没有value ...
分类:
其他好文 时间:
2017-05-26 19:44:08
阅读次数:
132
代码实现: https://github.com/Lyu0709/data-structure/blob/master/src/com/coding/basic/tree/Tree.java 第六章 树 树的定义 树的结点包含一个数据元素及若干指向其子树的分支。 结点拥有的子树数称为结点的度(deg ...
分类:
其他好文 时间:
2017-05-20 11:23:34
阅读次数:
248
代码实现: 第六章 树:二叉树 定义 特点 特点 二叉树的五种基本形态: 二叉树的五种基本形态: 1. 空二叉树 2. 只有一个根结点 3. 根结点只有左子树 4. 根结点只有右子树 5. 根结点基友左子树又有右子树 特殊二叉树 斜树 所有结点都只有左子树的二叉树叫做左斜树。所有结点都只有右子树的二 ...
分类:
其他好文 时间:
2017-05-20 11:21:07
阅读次数:
236
代码实现: 第六章 树:赫夫曼树 赫夫曼树定义与原理 从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称作路径长度。 树的路径长度就是从树根到每一结点的路径长度之和。 对于带权的结点,结点的带权路径长度为从该结点到树根之间的路径长度与结点上权的乘积。 树的带权路径长度为树 ...
分类:
其他好文 时间:
2017-05-20 11:12:55
阅读次数:
165