随笔分类 -  1.Algorithms(研究)

1 2 下一页
十三个经典算法研究与总结、目录+索引
摘要:十三个经典算法研究与总结、目录+索引作者:July。时间:二零一零年十二月末-二零一一年四月初。微博:http://weibo.com/julyweibo。出处:http://blog.csdn.net/v_JULY_v。声明:版权所有,侵权定究。--------------------------------------------------前言 本人的原创作品,经典算法研究系列,自从去年十二月末至今,已写了近四个月,而本人开博还不到半年。可以这么说,开博头俩个月一直在整理微软等公司的面试题,而后的四个月至今,则断断续续,在写此经典算法研究系列。 本经典算法研究系列,如今已写了22篇,1. 阅读全文
posted @ 2011-04-06 17:31 July_ 阅读(2845) 评论(2) 推荐(1)
十三、通过浙大上机复试试题学SPFA 算法
摘要:十三、通过浙大上机复试试题学SPFA 算法作者:July、sunbaigui。二零一一年三月二十五日。出处:http://blog.csdn.net/v_JULY_v。------------------前言: 本人不喜欢写诸如“如何学算法”此类的文章,一来怕被人认为是自以为是,二来话题太泛,怕扯得太远,反而不着边际。所以,一直不打算写怎么学习算法此类的文章。 不过,鉴于读者的热心支持与关注,给出以下几点小小的建议,仅供参考: 1、算法,浩如烟海,找到自己感兴趣的那个分支,或那个点来学习,然后,一往无前的深入探究下去。 2、兴趣第一,忌浮躁。 3、思维敏捷。给你一道常见的题目,你的头脑中应该. 阅读全文
posted @ 2011-03-25 13:07 July_ 阅读(653) 评论(0) 推荐(0)
二之三续、Dijkstra 算法+Heap堆的完整c实现源码
摘要:二之三续、Dijkstra 算法+Heap堆的完整c实现源码作者:JULY、二零一一年三月十八日出处:http://blog.csdn.net/v_JULY_v。------------------------------------------引言: 此文的写作目的很简单,就一个理由,个人认为:上一篇文章,二之再续、Dijkstra 算法+fibonacci堆的逐步c实现,写的不够好,特此再写Dijkstra 算法的一个续集,谓之二之三续。 鉴于读者理解斐波那契堆的难度,本文,以简单的最小堆为示例。同时,本程序也有参考网友的实现。有任何问题,欢迎指正。Dijkstra 算法+Heap堆完整. 阅读全文
posted @ 2011-03-24 18:22 July_ 阅读(749) 评论(0) 推荐(0)
十二、一之再续:快速排序算法之所有版本的c/c++实现
摘要:十二、快速排序算法所有版本的c/c++实现作者:July、二零一一年三月二十日。出处:http://blog.csdn.net/v_JULY_v。--------------------------------------------------前言: 相信,经过本人之前写的前俩篇关于快速排序算法的文章:第一篇、一、快速排序算法,及第二篇、一之续、快速排序算法的深入分析,各位,已经对快速排序算法有了足够的了解与认识。但仅仅停留在对一个算法的认识层次上,显然是不够的,即便你认识的有多透彻与深入。最好是,编程实现它。 而网上,快速排序的各种写法层次不清,缺乏统一、整体的阐述与实现,即,没有个一锤. 阅读全文
posted @ 2011-03-20 15:52 July_ 阅读(1570) 评论(1) 推荐(0)
二之再续、Dijkstra 算法+fibonacci堆的逐步c实现
摘要:二之再续、Dijkstra 算法+fibonacci堆的逐步c实现作者:JULY、二零一一年三月十八日出处:http://blog.csdn.net/v_JULY_v----------------------------------引言: 来考虑一个问题,平面上6个点,A,B,C,D,E,F,假定已知其中一些点之间的距离,现在,要求A到其它5个点,B,C,D,E,F各点的最短距离。如下图所示: 经过上图,我们可以轻而易举的得到A->B,C,D,E,F各点的最短距离:目的 路径 最短距离A=>A, A->A 0A=>B, A->C->B 3+2=5A=> 阅读全文
posted @ 2011-03-18 17:11 July_ 阅读(813) 评论(0) 推荐(0)
十一、从头到尾彻底解析Hash表算法
摘要:十一、从头到尾彻底解析Hash 表算法作者:July、wuliming、pkuoliver 出处:http://blog.csdn.net/v_JULY_v。说明:本文分为三部分内容, 第一部分为一道百度面试题Top K算法的详解;第二部分为关于Hash表算法的详细阐述;第三部分为打造一个最快的Hash表算法。------------------------------------第一部分:Top K 算法详解问题描述百度面试题: 搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。 假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1. 阅读全文
posted @ 2011-03-17 15:40 July_ 阅读(1257) 评论(0) 推荐(0)
九之再续:教你一步一步用c语言实现sift算法、下
摘要:教你一步一步用c语言实现sift算法、下作者:July、二零一一年三月十二日出处:http://blog.csdn.net/v_JULY_v。参考:Rob Hess维护的sift 库环境:windows xp+vc6.0条件:c语言实现。说明:本BLOG内会陆续一一实现所有经典算法。------------------------本文接上,教你一步一步用c语言实现sift算法、上,而来:函数编写 ok,接上文,咱们一个一个的来编写main函数中所涉及到所有函数,这也是本文的关键部分://下采样原来的图像,返回缩小2倍尺寸的图像CvMat * halfSizeImage(CvMat * im). 阅读全文
posted @ 2011-03-13 13:10 July_ 阅读(2710) 评论(0) 推荐(0)
九之再续:教你一步一步用c语言实现sift算法、上
摘要:教你一步一步用c语言实现sift算法、上作者:July、二零一一年三月十二日出处:http://blog.csdn.net/v_JULY_v参考:Rob Hess维护的sift 库环境:windows xp+vc6.0条件:c语言实现。说明:本BLOG内会陆续一一实现所有经典算法。------------------------引言: 在我写的关于sift算法的前倆篇文章里头,已经对sift算法有了初步的介绍:九、图像特征提取与匹配之SIFT算法,而后在:九(续)、sift算法的编译与实现里,我也简单记录下了如何利用opencv,gsl等库编译运行sift程序。 但据一朋友表示,是否能用c语. 阅读全文
posted @ 2011-03-13 09:32 July_ 阅读(8120) 评论(3) 推荐(0)
一之续、A*,Dijkstra,BFS算法性能比较及A*算法的应用
摘要:一之续、A*,Dijkstra,双向BFS算法性能比较及A*算法的应用作者:July 二零一一年三月十日。出处:http://blog.csdn.net/v_JULY_v--------------------------------------------------引言: 最短路径的各路算法A*算法、Dijkstra 算法、BFS算法,都已在本BLOG内有所阐述了。其中,Dijkstra 算法,后又写了一篇文章继续阐述:二(续)、理解Dijkstra算法。但,想必,还是有部分读者对此类最短路径算法,并非已了然于胸,或者,无一个总体大概的印象。 本文,即以演示图的形式,比较它们各自的寻路过. 阅读全文
posted @ 2011-03-10 17:37 July_ 阅读(4726) 评论(0) 推荐(0)
经典算法研究系列:九之续、sift算法的编译与实现
摘要:九之续、sift算法的编译与实现作者:July 、二零一一年三月一日。代码:Rob Hess维护的sift 库,July updated。环境:windows xp+vc6.0。条件:opencv1.0、gsl-1.8.exe----------------------------------------------- 昨日,下载了Rob Hess的sift库,将其源码粗略的看了看,想要编译时,遇到了不少问题,先修改了下代码,然后下载opencv、gsl。最后,几经周折,才最终编译成功。 以下便是sift源码库编译后的效果图: 为了给有兴趣实现sift算法的朋友提供个参考,特整理此文如下。要了 阅读全文
posted @ 2011-03-05 10:44 July_ 阅读(1683) 评论(0) 推荐(0)
十、从头到尾彻底理解傅里叶变换算法、下
摘要:经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、下作者:July、dznlong 二零一一年二月二十二日推荐阅读:The Scientist and Engineer's Guide to Digital Signal Processing,By Steven W. Smith, Ph.D。此书地址:http://www.dspguide.com/pdfbook.htm。------------从头到尾彻底理解傅里叶变换算法、上前言第一部分、 DFT第一章、傅立叶变换的由来第二章、实数形式离散傅立叶变换(Real DFT)从头到尾彻底理解傅里叶变换算法、下第三章、复数第四章、复数 阅读全文
posted @ 2011-02-22 21:08 July_ 阅读(16641) 评论(0) 推荐(0)
十、从头到尾彻底理解傅里叶变换算法、上
摘要:经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、上作者:July、dznlong 二零一一年二月二十日推荐阅读:The Scientist and Engineer's Guide to Digital Signal Processing,By Steven W. Smith, Ph.D。此书地址:http://www.dspguide.com/pdfbook.htm。博主说明:I、本文中阐述离散傅里叶变换方法,是根据此书:The Scientist and Engineer's Guide to Digital Signal Processing,By Steven W 阅读全文
posted @ 2011-02-20 23:36 July_ 阅读(76562) 评论(3) 推荐(4)
经典算法研究系列:九、图像特征提取与匹配之SIFT算法
摘要:经典算法研究系列:九、SIFT算法研究作者:July、二零一一年二月十五日。推荐阅读:David G. Lowe, "Distinctive image features from scale-invariant keypoints," International Journal of Computer Vision, 60, 2 (2004), pp. 91-110---------------------------------------------尺度不变特征转换(Scale-invariant feature transform 或 SIFT)是一种电脑视觉的算法 阅读全文
posted @ 2011-02-15 22:32 July_ 阅读(3693) 评论(0) 推荐(1)
经典算法研究系列:二之续、彻底理解Dijkstra算法
摘要:经典算法研究系列:二之续、彻底理解Dijkstra算法作者:July 二零一一年二月十三日。参考代码:introduction to algorithms,Second Edition。---------------------------------------了解什么是Dijkstra 算法,请参考:经典算法研究系列:二、Dijkstra 算法初探http://blog.csdn.net/v_JULY_v/archive/2010/12/24/6096981.aspx本文由单源最短路径路径问题开始,而后描述Bellman-Ford算法,到具体阐述Dijkstra算法,阐述详细剖析Dijk. 阅读全文
posted @ 2011-02-13 15:55 July_ 阅读(1414) 评论(0) 推荐(1)
经典算法研究系列:八、再谈启发式搜索算法
摘要:经典算法研究系列:八、再谈启发式搜索算法作者:July 二零一一年二月十日本文参考:I、 维基百科、II、 人工智能-09 启发式搜索、III、本BLOG内,经典算法研究系列:一、A*搜索算法----------------------------引言:A*搜索算法,作为经典算法研究系列的开篇文章,之前已在本BLOG内有所阐述。但要真正理解A*搜索算法,还是得先从启发式搜索算法谈起。毕竟,A*搜索算法也是启发式算法中的一种。ok,切入正题。一、何谓启发式搜索启发式搜索算法有点像广度优先搜索,不同的是,它会优先顺着有启发性和具有特定信息的节点搜索下去,这些节点可能是到达目标的最好路径。我们称这个 阅读全文
posted @ 2011-02-10 16:36 July_ 阅读(3393) 评论(0) 推荐(0)
经典算法研究系列:七、深入浅出遗传算法,透析GA本质
摘要:经典算法研究系列:七、遗传算法初探---深入浅出、透析GA本质作者:July二零一一年一月十二日。本文参考:维基百科华南理工大学电子讲义互联网-------------------------------------------------------------------------------一、初探遗传算法Ok,先看维基百科对遗传算法所给的解释:遗传算法是计算数学中用于解决最优化的搜索算法,是进化算法的一种。进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、自然选择以及杂交等。遗传算法通常实现方式为一种计算机模拟。对于一个最优化问题,一定数量的候选解(称为 阅读全文
posted @ 2011-01-12 20:57 July_ 阅读(1380) 评论(2) 推荐(0)
经典算法研究系列:六、教你从头到尾彻底理解KMP算法
摘要:6、教你从头到尾彻底理解KMP算法作者:July、saturnma 时间;二零一一年一月一日-----------------------本文参考:数据结构(c语言版) 李云清等编著、算法导论作者声明:个人July 对此24个经典算法系列,享有版权,转载请注明出处。引言:在文本编辑中,我们经常要在一段文本中某个特定的位置找出 某个特定的字符或模式。由此,便产生了字符串的匹配问题。本文由简单的字符串匹配算法开始,经Rabin-Karp算法,最后到KMP算法,教你从头到尾彻底理解KMP算法。来看算法导论一书上关于此字符串问题的定义:假设文本是一个长度为n的数组T[1...n],模式是一个长度为m& 阅读全文
posted @ 2011-01-01 17:14 July_ 阅读(1930) 评论(0) 推荐(0)
经典算法研究系列:四、教你通透彻底理解:BFS和DFS优先搜索算法
摘要:4、教你通透彻底理解:BFS和DFS优先搜索算法作者:July二零一一年一月一日---------------------------------本人参考:算法导论 本人声明:个人原创,转载请注明出处。ok,开始。翻遍网上,关于此类BFS和DFS算法的文章,很多。但,都说不出个所以然来。读完此文,我想,你对图的广度优先搜索和深度优先搜索定会有个通通透透,彻彻底底的认识。---------------------咱们由BFS开始:首先,看下算法导论一书关于 此BFS 广度优先搜索算法的概述。算法导论第二版,中译本,第324页。广度优先搜索(BFS)在Prime最小生成树算法,和Dijkstra单 阅读全文
posted @ 2011-01-01 12:18 July_ 阅读(1632) 评论(0) 推荐(0)
经典算法研究系列:三、动态规划算法解微软一道面试题[第56题]
摘要:动态规划算法作者July二零一零年十二月三十一日本文参考:微软面试100题系列V0.1版第19、56题、算法导论、维基百科。ok,咱们先来了解下什么是动态规划算法。动态规划一般也只能应用于有最优子结构的问题。最优子结构的意思是局部最优解能决定全局最优解(对有些问题这个要求并不能完全满足,故有时需要引入一定的近似)。简单地说,问题能够分解成子问题来解决。动态规划算法分以下4个步骤:1.描述最优解的结构2.递归定义最优解的值3.按自底向上的方式计算最优解的值 //此3步构成动态规划解的基础。4.由计算出的结果构造一个最优解。 //此步如果只要求计算最优解的值时,可省略。好,接下来,咱们讨论适合采用 阅读全文
posted @ 2010-12-31 17:46 July_ 阅读(4811) 评论(1) 推荐(0)
经典算法研究系列:五、红黑树算法的实现与剖析
摘要:红黑树算法的层层剖析与逐步实现----作者July二零一零年十二月三十一日本文主要参考:算法导论第二版本文主要代码:参考算法导论。本文图片来源:个人手工画成、算法导论原书。推荐阅读:Leo J. Guibas 和 Robert Sedgewick 于1978年写的关于红黑树的一篇论文。--------------------------------------------------------------红黑树系列,四篇文章于今日已经完成。[二零一一年一月九日]教你透彻了解红黑树:http://blog.csdn.net/v_JULY_v/archive/2010/12/29/610563. 阅读全文
posted @ 2010-12-31 11:10 July_ 阅读(1773) 评论(2) 推荐(1)

1 2 下一页