找到相关内容 126
再议“生成全排列算法
看了“白话算法(7) 生成全排列的几种思路(一)”和“白话算法(7) 生成全排列的几种思路(二) 康托展开”。在此,将以前本人推导的全排列算法介绍一下,和广大的网友交流一下。   以例子说明,用0、1、2、3,四个数组成全排列。   首先可以知道,这四个数组成的全排列一共有4!=24个。那么给这24个全排列编号,分别为0、1、2…R
http://www.cyqdata.cn/cnblogs/article-detail-36884 
算法导论》学习总结 — 10. 第10章(略) && 第11章 散列表
建议先看看前言:http://www.wutianqi.com/?p=2298   第10章没法说,数据结构还是看严奶奶的比较好,所以《算法导论》上的这一章我随便瞄了几眼就过去了,不过话说回来,数据结构非常重要!!!所以,大家最好把严蔚敏的《数据结构》认认真真的看N遍!!! 另外,推荐看看这个: 数据结构的源码实现:http://www.cpp leyuan.com/viewthread
http://www.cyqdata.cn/cnblogs/article-detail-36878 
从1加到100的算法你会吗?那从第M加到第N呢?
今天在看视频教程的时候,听到“杨中科”老师说有很多大公司,在面试的时候常常问一些基础的东西,甚至常问你一些简单到“变态”的题,对于我们做Web开发来说,突然问你一些算法题,也许有好多人当时的脑子是空白的;杨老师说例如问到从1加到100的算法,有很多程序员都写不出来;今天在这里,我用一种数学公式来算出这道题~ 首先要知道从1加到100的数式; n*(n
http://www.cyqdata.cn/cnblogs/article-detail-36796 
算法导论》学习总结 — 9.第九章 中位数和顺序统计学
建议先看看前言:http://www.cnblogs.com/tanky_woo/archive/2011/04/09/2010263.html   这一章的内容很简单,基本都是一些概念。  第i个顺序统计量:在一个由n个元素组成的集合中,第i个顺序统计量(order statistic)是该集合中第i小的元素。 最小值是第1个顺序统计量(i=1) 最大值是第n个顺序统计量(i
http://www.cyqdata.cn/cnblogs/article-detail-36739 
算法导论》学习总结 — 8.第八章(2) 计数排序 && 基数排序 && 桶排序
建议先看看前言 : http://www.cnblogs.com/tanky_woo/archive/2011/04/09/2010263.html 这一节讲的是非线性排序。 一.计数排序(Counting Sort) 基本思想:对每一个输入元素x,确定出小于x的元素个数。 适用范围:适用于输入是由小范围的整数构成的序列。 稳定性:算法是稳定的。 具体实现:  /* Auth
http://www.cyqdata.cn/cnblogs/article-detail-36639 
算法导论》学习总结 — 7.第八章(1) 决策树
建议先看看前言 : http://www.cnblogs.com/tanky_woo/archive/2011/04/09/2010263.html   第八章将介绍几种非比较排序—计数排序,基数排序,桶排序,这三种排序都在线性时间下运行的。 这一节决策树其实是对前面的堆排序,快排等是最优的比较算法的证明, 首先说下《算法导论》上对决策树的定义:一棵决策树是一棵满二
http://www.cyqdata.cn/cnblogs/article-detail-36526 
算法题——第1000000个数是多少?
原题在“两道TB面试题”文章中。今日在本文中,就个人的理解再阐述一遍。   题目1:有一个数列,它由3个数列复合而成,并升序排列。三个数列分别是2的n次,3的n次,5的n次,0≤n<∞。给出前几项:1,2,3,4,5,8,9,16,25,27………………即20(30, 50
http://www.cyqdata.cn/cnblogs/article-detail-36487 
求两点之间所有路径的算法
作者:finallyly 出处:技术(如若转载请注明作者和出处) 最近在实现一个算法算法之内有一个子算法是求有向图内两个定点(原点和目的点)之间的全部路径。在网上翻阅了大部分资料,发现给出的算法和代码要么只能解决DAG(有向无环图)的两定点之间所有路径问题,要么就是算法本身存在若干漏洞,连DAG图也无法解决。花费了一天的时间,自己写了个求简单有向图中(包括dag和非dag)两定点之间所有路径的算
http://www.cyqdata.cn/cnblogs/article-detail-36397 
白话算法(7) 生成全排列的几种思路(一)
我在黄昏时坐在地球上        我这样说并不表明晚上        我就不在地球上                  ——海子 《明天醒来我会在哪一只鞋子里》思路1:加大搜索空间,使用评估函数找到解  “如果在可能的地方找不到,就去不可能的地方找。”这是一句废话,也是一句挺有道理的话,甚至有时候,它还是一句有用的话。因为生活中有时真的会有神奇的事
http://www.cyqdata.cn/cnblogs/article-detail-36358 
漫谈算法(四)分治算法 Divide and Conquer Algorithm
Keywords: Divide and Conquer Algorithm; Mathematical Induction; Recurrence Tree; Master Theorem . [为什么写这类文章]   漫谈算法(零)序 [这系列文章里会用到的一下符号和公式]   漫谈算法(番外篇) 符号标记以及基本数学公式
http://www.cyqdata.cn/cnblogs/article-detail-36339 
漫谈算法(二) 动态规划 Dynamic Programming
Keywords: Dynamic Programming; Recursive Methods [为什么写这类文章]   漫谈算法(零)序 [这系列文章里会用到的一下符号和公式]   漫谈算法(番外篇) 符号标记以及基本数学公式 动态规划,Dynamic Programming。这里的programming没有翻译成编程,是因为,这里的progr
http://www.cyqdata.cn/cnblogs/article-detail-36287 
算法导论》学习总结 — 3.第四章 &amp;&amp; 第五章
建议先看看前言:http://www.cnblogs.com/tanky_woo/archive/2011/04/09/2010263.html 因为《算法导论》第一部分1~5章的理论性太强,研究过多容易纠结,所以索性合起来快点讲过去。 第四章: 这一章讲的是递归式(recurrence),递归式是一组等式或不等式,它所描述的函数是用在更小的输入下该函数的值来定义的。 本章讲了三种方法来解递归式,
http://www.cyqdata.cn/cnblogs/article-detail-36258 
漫谈算法(一) 如何证明贪心算法是最优 using exchange argument
Keywords: Greedy Algorithm; Exchange Argument [为什么写这类文章] 这里主要是介绍一种证明贪心算法是最优的一种方法:Exchange Argument (不知道应该怎么翻译到中文,交换参数?感觉听起来挺别扭的,不像是一个方法的名字~o(╯□╰)o) Exchange Argument的主要的思想也就是 先假设 存在一个最优的算法和我们的贪心算法最接近,
http://www.cyqdata.cn/cnblogs/article-detail-36171 
算法导论》学习总结 — 2.第一章 &amp;&amp; 第二章 &amp;&amp; 第三章
上一篇:http://www.cnblogs.com/tanky_woo/archive/2011/04/09/2010263.html   前三章基本没什么内容,所以合在一起总结。 第一章: 讲了算法(algorithm)的基本概念,以及算法的作用。(这些可以看书) 用个人的话来讲,你可以把算法当做一个解决问题的方法,就像数学里的各种公式一样,你也可以把他们认为是一种算法算法无处不在
http://www.cyqdata.cn/cnblogs/article-detail-36170 
算法导论》学习总结 --- 1.前言
09年买的这本书,不过先开始一直没怎么用,直到去年6月份左右开始搞ACM,才偶尔翻翻这本书。   这本书给我这样的感觉:有时遇到一个算法,在网上找了很多相关资料,但是看完后还是有点迷茫,然后才想起《算法导论》,遇到翻开目录,发现有相关的章节,于是去认真阅读,顿时发现自己的很多问题都可以解决了。它就是这么一本书,也许你会把它当一本圣经来供养,但是当你认真阅读后,你会发现你受益颇多。 于是,
http://www.cyqdata.cn/cnblogs/article-detail-36139 
KMP算法
KMP算法是字符串处理算法的一种经典算法。字符串中的一些算法在C++中需要编程者自己实现,在C#中的话String类的功能及其强大,编程者自己调用该类一些功能完成字符串处理。那么可能就导致错过这些字符串基本的经典算法。而在字符串处理这些算法中,KMP算法可谓是经典算法。   那么首先看下面一个一般求子串在主串中的位置的算法。 模式匹配   有两个字符串S1(长度为n)和S2(长度为m)(n>
http://www.cyqdata.cn/cnblogs/article-detail-36032 
算法题——一道数字组合的题目的求解
题目:给定一个数字,和一个范围,产生所有在范围内的不重复的数字之和,和等于给定的数字。     举例:给数字12,范围3-6。可以产生以下5个组合:     1、3+3+3+3     2、3+3+6     3、3+4+5     4、4+4+4     5、6+6   要求给出最快实现,并且是非递归。      这是某人给我出的一道算法题。经过考虑,给出了解法。最快的谈不上(算法无止境、人外有
http://www.cyqdata.cn/cnblogs/article-detail-35894 
语音编码算法AMR NB , AMR WB 和AMR WB+的区别
网上有些分析AMR NB 和AMR WB区别的资料,为节省篇幅,就不一一转过来了,可以参考如下 http://www.rosoo.net/a/201101/10759.html 还有科技论文在线的:AMR-NB 与AMR-WB 语音编码标准技术的对比研究 不过我感觉这些对比都是对比的表面现象,没有对比AMR NB和AMR WB的本质不同,AMR NB和AMR WB语音编解码都是使用的是多码率宽带代
http://www.cyqdata.cn/cnblogs/article-detail-35826 
A算法的一些理解
这是一篇读书笔记,论文见http://files.cnblogs.com/crbtmac/Astar%E5%AF%BB%E8%B7%AF%E5%88%9D%E6%8E%A2.pdf   所谓众里寻她千百度讲的就是启发式搜索吧- -!   做ACM题目的时候,发现很少题目涉及到启发式搜索,也就是所谓的A算法。这学期开始学人工智能,于是对A算法也就有了更深入的了解。   A算法就是在普通的宽搜或者深搜
http://www.cyqdata.cn/cnblogs/article-detail-35605 
编程基本算法(三)
编程基本算法(一) 编程基本算法(二) 编程基本算法(三)   选择排序 使用条件:可对比大小的集合。 算法思想:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 举例编程:int b[10]={77,1,65,13,81,93,10,5,23,17} //简单选择排序void SimpleSelect(int b
http://www.cyqdata.cn/cnblogs/article-detail-35535