- 博客(6)
- 资源 (31)
- 收藏
- 关注
原创 Trie树 与 三分树(Ternary Trees)
总结为什么用Trie树?词频统计 可能有人要说了,词频统计简单啊,一个hash或者一个堆就可以打完收工,但问题来了,如果内存有限呢?还能这么玩吗?所以这里我们就可以用trie树来压缩下空间,因为公共前缀都是用一个节点保存的。前缀匹配 如果and,as,at,我想获取所有以”a”开头的字符串,如果不用trie树,你该怎么做呢?很显然朴素的做法时间复杂度为O(N2),那么用Trie树就不一样了,
2016-12-30 11:25:20 3678 1
原创 排序公式 与 组合公式
总结C-代表-Combination–组合数 A-代表-Arrangement–排列数(在旧教材为P-permutation–排列) N-代表-元素的总个数 M-代表-参与选择的元素个数 !-代表-阶乘博客(http://jingyan.baidu.com/article/63acb44ac60d4e61fcc17e2e.html)排序公式从n个不同元素中,任取m个元素按照一定的顺序排成一列
2016-12-30 09:57:43 1953 1
原创 开放定址法(线性探测),拉链法 -Hash算法
总结:哈希别名为:Hash 或者 散列表; 开放定址法是为了解决hash值碰撞后的处理;散列表(哈希)是算法在时间和空间上作出权衡的经典例子。 如果没有内存限制,我们可以直接将键作为(可能是一个超大的)数组的索引,那么所有查找操作只需要访问内存一次即可完成。但这种情况不会经常出现,因此当键很多时需要的内存太大。 另一方面,如果没有时间限制,我们可以使用无序数组并进行顺序查找,这样就只需要很少的
2016-12-30 09:11:01 7646 2
原创 位图排序、多路归并排序-应对磁盘文件排序
注意文章详解(http://blog.csdn.net/v_JULY_v/article/details/6451990)如何给磁盘文件排序问题描述:输入:给定一个文件,里面最多含有n个不重复的正整数(也就是说可能含有少于n个不重复正整数),且其中每个数都小于等于n,n=10^7。 输出:得到按从小到大升序排列的包含所有输入的整数的列表。 条件:最多有大约1MB的内存空间可用,但磁盘空间足够。且
2016-12-13 17:08:40 1999
原创 哈希Hash 算法
注意文章详解(http://blog.csdn.net/v_july_v/article/details/6256463)哈希由来:数组的特点是:寻址容易,插入和删除困难 链表的特点是:寻址困难,插入和删除容易做出一种寻址容易,插入删除也容易哈希特点:通过散列算法,变换成固定长度的输出;散列值的空间通常远小于输入的空间, 不同的输入可能会散列成相同的输出, 而不可能从散列值来唯一的确定输
2016-12-13 14:08:12 2231
原创 二叉树前序、中序确定树结构
例子前序:A D C E F G H B 中序:C D F E G H A B中序使用中括号划分左、右子树中括号选中的节点依次为前序的顺序; 中括号左右两边分别为左、右子树; 当子树为1个节点时,可以肯定这个子树位置;C D F E G H [A] BC [D] F E G HF [E] G H[G] H演示过程
2016-12-09 14:59:45 826
linux_下_C_语言_连接_MySQL数据库_(详细注释).txt
2012-04-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人