工厂设计模式
摘要:这周在看代码时,看到别人的代码里用到了工厂设计模式,做为小白,所以来学习下。 我们首先来看一个例子,是女娲造人的例子,女娲需要造黑色、黄色和白色三种人。并且每种人分为男性和女性。 这个例子中就可以用到工厂设计模式。具体的类图如下: 接下来,我们来看看相关的实现,Human接口代码清单如下: 人种有三
阅读全文
posted @
2017-12-24 13:16
junjiang3
阅读(205)
推荐(0)
数据结构之哈夫曼树
摘要:现在,我们经常会使用压缩和解压缩软件来处理文档,因为它除了可以减少文档在磁盘上的空间外,还有重要的一点,就是我们可以在网络上一压缩的形式传输大量数据,是的保存和传递都更加高效。 那么压缩而不出错是如何做到的呢?简单说,就是把我们要压缩的文本进行重新编码,今天我们就介绍一种最基本的压缩编码方法——哈夫
阅读全文
posted @
2017-12-17 19:12
junjiang3
阅读(1814)
推荐(0)
数据结构之Trie树
摘要:最近在做搜索的时候用到了AC双数组自动机,理解它的基础是Trie树,因此,学习了一下。 一、基本介绍 Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串), 所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无
阅读全文
posted @
2017-12-10 19:04
junjiang3
阅读(733)
推荐(0)
数据结构之循环链表和双向链表
摘要:一、循环链表 循环链表:是一种头尾相接的链表。其特点是最后一个结点的指针域指向链表的头结点,整个链表的指针域链接成一个环。 特点是: 从循环链表的任意一个结点出发都可以找到链表中的其它结点,使得表处理更加方便灵活。 其示意图如下图所示 循环链表的操作: 对于单循环链表,除链表的合并外,其它的操作和单
阅读全文
posted @
2017-12-03 18:24
junjiang3
阅读(3948)
推荐(0)