数据结构与算法
文章平均质量分 78
Franck_LeeMH
这个作者很懒,什么都没留下…
展开
-
倒排索引原理详解
倒排索引 1.简介 倒排索引源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(invertedindex)。带有倒排索引的文件我们称为倒排索引文件,简称倒排文件(invertedfile)。 倒排文件(倒排索引),索引对象是文档或者文档集合中的单词等,用来存储原创 2012-05-18 11:24:30 · 6849 阅读 · 1 评论 -
海量数据处理常用思路和方法
大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。 下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。原创 2012-05-13 23:07:26 · 1030 阅读 · 0 评论 -
经典数据结构-块状链表详解
经典数据结构-块状链表详解 1、 概述 在进行算法设计时,我们常用的两种线性数据结构是数组和链表。它们各有优缺点。数组特点是元素在内存中紧挨着存储,因而优点是定位快(O(1)),缺点是插入删除慢(O(n));而链表则不同,它通过指针将不同位置的元素链接起来,因而优缺点与数组正好相反:定位慢(O(n)),插入删除快(O(1))。本文介绍一种新的数据结构:块状链表,它将数组和链表的优点原创 2012-09-06 16:34:54 · 1702 阅读 · 0 评论 -
求一个字符串中连续出现次数最多的子串
求一个字符串中连续出现次数最多的子串 这里要注意的是, 字符串必须要连续出现, 不是出现次数最多的最长子串! 首先来分析基于子串的算法。这些算法使用一种直观的思想:枚举可能的子串,然后与原串进行串匹配,在所有解中找到最优的。串匹配有很多算法,包括著名的 Knuth-Morris-Pratt、稍微不那么著名的Boyer-Moore,还有基于自动机的算法。其中KMP以及BM的一个变种的原创 2012-09-13 22:41:32 · 1852 阅读 · 0 评论 -
后缀数组原理及应用详解
后缀数组原理及应用详解 在pongba的讨论组上看到一道Amazon的面试题:找出给定字符串里的最长回文。例子:输入XMADAMYX。则输出MADAM。这道题的流行解法是用后缀树(Suffix Tree)。这坨数据结构最酷的地方是用它能高效解决一大票复杂的字符串编程问题: 1.在文本T里查询T是否包含子串P(复杂度同流行的KMP相当)。 2.文本T里找出最长重复子串。比如ab原创 2012-09-13 16:22:11 · 5280 阅读 · 3 评论