摘要: 乔家大院朱秀海"善于不善,那在于个人自为",当乔致庸有机会将达盛昌一举打败,为死去的乔致广报仇的时候,他最终坚定而从容地说出这番话。晋商的对内管理的制度,和对外经营的策略不亚于现今任何一家大型企业;这再次印证了一个事实:道理谁都明白,但真正做起来就很难。当乔致庸挣扎着要办票号的时候,孙茂才的一番言语 阅读全文
posted @ 2014-05-27 10:19 Leo C. 阅读(556) 评论(0) 推荐(0) 编辑
摘要: 议题:AC自动机(Aho-Corasick Automation)分析:此算法在1975年产生于贝尔实验室,是著名的多模式匹配算法之一;一个常见的例子就是给定N个单词,给定包含M个字符的文章,要求确定多少个给定的单词在文章中出现过;AC自动机在匹配文本时不需要回溯,处理时间复杂度与pattern无关... 阅读全文
posted @ 2014-05-27 10:15 Leo C. 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 议题:动态规划(Dynamic Programming)分析:DP主要用于解决包含重叠子问题(Overlapping Subproblems)的最优化问题,其基本策略是将原问题分解为相似的子问题,通过求解并保存最简单子问题的解,然后逐步合并成为原问题的解,由于需 要查询子问题的解,所以需要一个表格记... 阅读全文
posted @ 2014-05-27 10:09 Leo C. 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 议题:布隆过滤器(Bloom Filter)分析:BF由一个很长的二进制向量和一系列随机映射的函数组成,通过多个Hash函数将一个元素映射到一个Bit Array中的多个点,查询的时候仅当所有的映射点都为1才能判断元素存在于集合内;BF用于检索一个元素是否在一个集合中,记忆集合求交集;优点是空间 和... 阅读全文
posted @ 2014-05-27 09:58 Leo C. 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 议题:线段树(Interval Tree)分析:线段树是一种二叉搜索树,将一个大区间划分成单元区间,每个单元区间对应一个叶子节点;内部节点对应部分区间,如对于一个内部节点[a, b]而言,其左子节点表示的区间为[a, (a+b)/2],其右子节点表示的区间为[1+(a+b)/2, b];对于区间长度... 阅读全文
posted @ 2014-05-27 09:52 Leo C. 阅读(1106) 评论(0) 推荐(0) 编辑
摘要: 议题:线索二叉树(Threaded Binary Tree)分析:为除第一个节点外的每个节点添加一个指向其前驱节点的指针,为除最后一个节点外的每个节点添加一个指向其后续节点的指针,通过这些额外的指针可以某种遍历方式对二叉树进行遍历,而加了这些额外指针的二叉树就是线索二叉树;对于含有N个节点的二叉树而... 阅读全文
posted @ 2014-05-26 09:52 Leo C. 阅读(743) 评论(0) 推荐(0) 编辑
摘要: 议题:后缀数组(Suffix Array)分析:后缀树和后缀数组都是处理字符串的有效工具,前者较为常见,但后者更容易编程实现,空间耗用更少;后缀数组可用于解决最长公共子串问题,多模式匹配问题,最长回文串问题,全文搜索等问题;后缀数组的基本元素:给定一个string,其长度为L,后缀指的是从strin... 阅读全文
posted @ 2014-05-26 09:48 Leo C. 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 议题:TRIE树 (Trie Tree or Prefix Tree);分析:又称字典树或者前缀树,一种用于快速检索的多叉树结构;英文字母的Trie树为26叉树,数字的Trie树为10叉树;All the descendants of a node have a common prefix of t... 阅读全文
posted @ 2014-05-26 09:23 Leo C. 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 议题:并查集(Union-Find Sets)分析:一种树型数据结构,用于处理不相交集合(Disjoint Sets)的合并以及查询;一开始让所有元素独立成树,也就是只有根节点的树;然后根据需要将关联的元素(树)进行合并;合并的方式仅仅是将一棵树最原始的节点的父亲索引指向另一棵树;优化:加入一个ra... 阅读全文
posted @ 2014-05-26 09:11 Leo C. 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 出题:要求层序遍历二叉树,从上到下的层次,每一层访问顺序为从左到右,并将节点一次编号,输出如下;如果只要求打印指定的level的节点,应该如何实现。 a b c d e f g h i分析:原始的层序遍历类似于BFS,打印当前访问的节点curNode的序列号,并将其直接子节点放入队列queu... 阅读全文
posted @ 2014-05-25 14:45 Leo C. 阅读(191) 评论(0) 推荐(0) 编辑