继上篇的kmeans聚类算法,本文讲解了和Kmeans极为类似的kmediod聚类算法,分析了其异同及优缺点,并通过matlab代码实现了kmediod.代码中仍有bug.希望有大神能帮忙看看到底是收敛时间过长导致程序不终止还是代码本身的问题....
分类:
其他好文 时间:
2014-07-21 22:36:13
阅读次数:
580
进行算法设计的时候,时常有这样的体会:如果已经知道一道题目可以用动态规划求解,那么很容易找到相应的动态规划算法并实现;动态规划算法的难度不在于实现,而在于分析和设计—— 首先你得知道这道题目需要用动态规划来求解。本文,我们主要在分析动态规划在算法分析设计和实现中的应用,讲解动态规划的原理、设计和实现。在很多情况下,可能我们能直观地想到动态规划的算法;但是有些情况下动态规划算法却比较隐蔽,难以发现。...
分类:
其他好文 时间:
2014-07-19 23:35:08
阅读次数:
288
手把手分析全排列算法,费了不少功夫终于想通了,本文将给出三种全排列算法以及详细解释
分类:
其他好文 时间:
2014-07-19 19:07:23
阅读次数:
267
在排序算法中,简单排序主要有三种,分别为冒泡排序、选择排序、插入排序,学习理解好这三种排序算法有助于进一步研究数据结构与算法分析。下面,简单地谈一谈冒泡排序、选择排序、插入排序的原理及区别。冒泡排序原理:1、比较相邻的元素。如果前一个比后一个大,它们就交换。2、每对元素都要进行同样的动作,从后往.....
分类:
其他好文 时间:
2014-07-19 16:32:37
阅读次数:
203
题目地址:http :// www . lydsy . com / JudgeOnline / problem . php ? id = 1010
题目大意:见原题。
算法分析:
设s[i]为c[i]的前缀和,f[i]表示第1个物品到第i个物品的最小代价。
易得DP方程为f[i]=min(f[j]+(s[i]-s[j]+i-j+1-l)^2)。...
分类:
其他好文 时间:
2014-07-18 18:06:29
阅读次数:
280
浅谈尾递归 2013-02-10 14:12:57 在《数据结构与算法分析:C描述》(Data Structures and Algorithm Analysis In C)的第三章中,以打印链表为例,提到了尾递归(tail recursion)并指出了尾递归是使用递归极其不当的例子,它指出虽然编译...
分类:
其他好文 时间:
2014-07-18 08:11:35
阅读次数:
162
将线性表以带头结点的单链表作存储结构,偶数放前,奇数放后;代码如下:#includetypedef struct LNode { int data ; struct LNode *next ;}LNode , *LinkList ;int main() { LinkList...
分类:
其他好文 时间:
2014-07-14 10:34:37
阅读次数:
189
接上面的题目,假若待排序的数据有重复的呢?这里采用的是归并排序。1、算法分析: 1、稳定性:归并排序是一种稳定的排序。 2、存储结构要求:可用顺序存储结构。也易于在链表上实现。 3、时间复杂度: 对长度为n的文件,需进行lgn趟二路归并,每趟归并的时间为O(n),故其时间复杂度无论是在最好情况下还是...
分类:
其他好文 时间:
2014-07-13 20:35:20
阅读次数:
373
将一个字符串倒序后,与原始字符串相同,则该字符串被称之为回文,如今给定一个较长的字符串,要求出该长字符串中包括的最长回文子串。若有多个回文串相同长,找出第一个就可以。回文串推断算法:(1)设待推断字符串为str。定义两个整数i和j。i为字符串首元素下标,j为字符串最后一个元素的下标。(2)推断str...
分类:
其他好文 时间:
2014-07-13 12:41:08
阅读次数:
162
2014.07.08 22:43简介: “搜索”与“剪枝”几乎是如影随形的。此处的“搜索”指的是带有回溯算法的深度优先搜索。 在之前的“Minimax策略”中我们给出了一个三连棋的程序,运行后你就知道计算一步棋要花多少时间。 为了计算最优的一步棋,我们可能需要递归9万多次。如果毫无疑问这种阶乘...
分类:
编程语言 时间:
2014-07-12 13:01:38
阅读次数:
728