码迷,mamicode.com
首页 >  
搜索关键字:分治法    ( 936个结果
hdu 刷题记录
1007 最近点对问题,采用分治法策略搞定 1 #include 2 #include 3 #include 4 using namespace std; 5 int n; 6 struct node 7 { 8 double x; 9 double y;10 }p[100005];11 i...
分类:其他好文   时间:2014-08-31 10:29:51    阅读次数:197
排序算法总结之快速排序
快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。 分治法的基本思想     分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。...
分类:其他好文   时间:2014-08-27 16:33:48    阅读次数:193
白话经典算法系列之五 归并排序的实现
归并排序是建立在归并操作上的一种有效的排序算法。该算法是採用分治法(Divide and Conquer)的一个很典型的应用。首先考虑下怎样将将二个有序数列合并。这个很easy,仅仅要从比較二个数列的第一个数,谁小就先取谁,取了后就在相应数列中删除这个数。然后再进行比較,假设有数列为空,那直接将还有...
分类:其他好文   时间:2014-08-26 15:01:46    阅读次数:209
C#快速排序详解
使用快速排序法对一列数字进行排序的过程快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为两个子序列(sub-lists)。步骤为:从数列中挑出一个元素,称为 "基准"(pivot),重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆放在基...
分类:其他好文   时间:2014-08-25 03:24:23    阅读次数:228
排序算法分析【六】:快速排序(附Python&C++代码)
快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较。 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists)。 步骤为: 从数列中挑出一个元素,称为 "基准"(pivot),重新排序数列,所有元素比基准值小的摆放在基准前面,所有元...
分类:编程语言   时间:2014-08-23 23:03:11    阅读次数:485
计算算法时间复杂度的主方法的一种较为简洁的记忆方法
这阵子在认真地看着算法导论,之前看到第四章计算分治法的时间复杂度的计算方法被称为“主方法”,运用这个主方法可以快速地口算出分治算法的递归式的时间复杂度,以下给出算法导论里关于主方法的描述吧,我就直接截图不得不说,算法导论是一本非常偏向于数学的算法书,里面的对于各种算法结论的正确性大都有着严格的数.....
分类:其他好文   时间:2014-08-23 11:12:30    阅读次数:203
快速排序的递归和非递归分析
1、算法思想      快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。 (1) 分治法的基本思想      分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。 (2)快速排序的...
分类:其他好文   时间:2014-08-21 09:52:02    阅读次数:267
排序——归并排序
归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个有序的子序列,再把有序的子序列合并为整体有序序列。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路...
分类:其他好文   时间:2014-08-18 12:32:04    阅读次数:230
快速排序和归并排序总结
都是两种效率高而且常用的排序方法,今天来总结下。 先说快排: 首先,快速排序的时间复杂度为nlogn,其思想实质为分治法。而这分治法的基本思想为以下三点: 1.先从数列中取出一个基准数。 2.在分治的过程中,比这个基准数小的数全部放到这个基准数的左边,反之则放到右边。 3.然后再对由第...
分类:其他好文   时间:2014-08-17 02:22:30    阅读次数:186
白话经典算法系列之五 归并排序的实现
归并排序是建立在归并操作上的一种有效的排序算法。该算法是採用分治法(Divide and Conquer)的一个很典型的应用。首先考虑下怎样将将二个有序数列合并。这个很easy,仅仅要从比較二个数列的第一个数,谁小就先取谁,取了后就在相应数列中删除这个数。然后再进行比較,假设有数列为空,那直接将还有...
分类:其他好文   时间:2014-08-15 14:13:49    阅读次数:146
936条   上一页 1 ... 85 86 87 88 89 ... 94 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!