题目:给两个字符串s和m,问m是否是s中的子串? 这是一个字符串匹配问题,我们可以直观的想到最简单的办法,就是两个循环,s从第一个到s.length - m.length。这个方法可以很好的解决问题,当然这里只是解决问题,并不能效率很高的解决。下面我们来看一下KMP算法是怎么样把时间复杂度降低到O( ...
分类:
编程语言 时间:
2016-09-02 09:56:32
阅读次数:
141
转载地址:http://blog.csdn.net/watkinsong/article/details/38536463 1. 前言 PCA : principal component analysis ( 主成分分析) 最近发现我的一篇关于PCA算法总结以及个人理解的博客的访问量比较高, 刚好目 ...
分类:
编程语言 时间:
2016-08-31 10:34:24
阅读次数:
586
尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Fun zdd zddmail@gmail.com 对于初学者,从David G.Lowe的论文到实现,有许多鸿沟,本文帮你跨越。 1、SIFT综述 尺度不变特征转换(Scal ...
分类:
编程语言 时间:
2016-08-28 01:13:06
阅读次数:
298
转载1:A*算法入门 http://www.cppblog.com/mythit/archive/2009/04/19/80492.aspx 在看下面这篇文章之前,先介绍几个理论知识,有助于理解A*算法。 启发式搜索:启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这 ...
分类:
编程语言 时间:
2016-08-26 22:43:36
阅读次数:
790
BP算法是关于误差的反向传播算法,就是从输出层开始,将结果与预期结果相比较,求出误差,然后按照梯度最大下降方向,调整神经元的联接权值,然后依次逐层调整各层之间的连接权值,对于批量学习方式而言,不断重复...
分类:
编程语言 时间:
2016-08-25 21:23:18
阅读次数:
303
出处:http://blog.csdn.net/v_JULY_v 第一部分:Top K 算法详解问题描述百度面试题: 搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。 假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复 ...
分类:
编程语言 时间:
2016-08-20 17:54:30
阅读次数:
286
具体 源代码 案例查看github,持续更新中............ github地址:https://github.com/Master-fd/C-Algorithm 1. 二分法查找 2. 冒泡排序 3. 插入排序 4. 希尔排序 5. 选择排序 6. 快速排序 7. 单链表实现堆栈 8. 单 ...
分类:
编程语言 时间:
2016-08-10 22:22:41
阅读次数:
222
今天花了很长时间终于弄懂了这个算法……毕竟找一个好的讲解真的太难了,所以励志我要自己写一个好的讲解QAQ 这篇文章是在懂了这个问题n^2解决方案的基础上学习。 解决的问题:给定一个序列,求最长不下降子序列的长度(nlogn的算法没法求出具体的序列是什么) 定义:a[1..n]为原始序列,d[k]表示 ...
分类:
编程语言 时间:
2016-08-06 00:37:35
阅读次数:
201
首先简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有模式树(字典树)Trie和KMP模式匹配 ...
分类:
编程语言 时间:
2016-08-03 23:44:13
阅读次数:
259
二叉查找树可以递归地定义如下,二叉查找树或者是空二叉树,或者是满足下列性质的二叉树: (1)若它的左子树不为空,则其左子树上任意结点的关键字的值都小于根结点关键字的值。 (2)若它的右子树不为空,则其右子树上任意结点的关键字的值都大于根节点关键字的值。 (3)它的左、右子树本身又是一个二叉查找树。 ...
分类:
编程语言 时间:
2016-08-01 10:41:49
阅读次数:
370