1:合并排序 合并排序算法使用分治策略实现对n个元素进行排序的算法。其基本思想是:将待排序元素分成大小大致相同的两个子集合,分别对两个子集合进行排序,最后总将排好序的子集合合并成所要求的排好序的集合。算法描述如下:void MergeSort(Typr a[],int left,int right....
分类:
其他好文 时间:
2014-09-16 12:15:50
阅读次数:
163
背景 当前存在排序的方法,这里以插入排序为例子,分析一个算法产生的过程。问题描述 有这么一个n个数的输入,我们希望的输出是一个有序的集合。算法描述 插入排序算法是对少量元素进行排序的有效算法。插入排序的原理和我们平时打牌的做法差不多。在开始摸牌的时候,我们的左手是空的,桌子上放着我们看不到数字...
分类:
其他好文 时间:
2014-09-13 17:08:15
阅读次数:
142
构造连通网的最小生成树,就是使生成树的边的权值之和最小化。常用的有Prim和Kruskal算法。先看Prim算法:假设N={V,{E}}是连通网,TE是N上最小生成树中边的集合。算法从U={u0}(uo属于V),TE={}开始,重复执行下述操作:在所有u属于U,v属于V-U的边(u,v)属于E中找到代价最小的一条边(u0,v0)并入集合TE,同时v0并入U,直至U=V为止。此时TE中必有n-1条边...
分类:
其他好文 时间:
2014-08-12 10:27:23
阅读次数:
232
Prim算法:
假设N = (V,{E})是连通网,TE是N上最小生成树中边的集合。算法从U={u0}(u0属于V),TE={}开始,重复执行下述操作:在所有u属于U,v属于V-U的边(u,v)属于E中找到一条代价最小的边(u0,v0)并入集合TE,同时v0并入U,直至U=V为止,此时TE中必有n-1条边,则T=(V,{TE})为N的最小生成树.
为实现这个算法,需附设一个辅助数组cl...
分类:
其他好文 时间:
2014-07-01 15:44:15
阅读次数:
254
要取得一个对象的属性和方法用:dir()某方法的具体使用方法帮助用:help(list.pop)查看可调用字段的文档用:obj__doc__集合:无序排列、可hash支持集合算法。不支持:索引、切片、元素获取集合类型:set()可变集合。frozenset()不可变集合。(frozen冻结的)集合没有特定语法格式..
分类:
编程语言 时间:
2014-06-29 21:56:13
阅读次数:
221
Web应用中,对记录集的Tag运算中 找出同时符合多个tag条件的记录集合算法,SQL 语句解决方案。...
分类:
数据库 时间:
2014-06-19 12:17:25
阅读次数:
262
将一个序列变成另一个序列的最少修改步数。例如下图,将字符串A变成字符串B,所需要的步骤为8个步骤:设计算法如下: public sealed class
MinimumEditDistance { public int[,] CalculateDistance(string...
分类:
其他好文 时间:
2014-05-27 02:29:13
阅读次数:
246