码迷,mamicode.com
首页 >  
搜索关键字:分治算法    ( 353个结果
分治算法Divide-and-Conquer概述
设计过程分为三个阶段          Divide: 整个问题划分为多个子问题  T(n)=D(n)          Conquer:求解各子问题(递归调用正设计的算法)  T(n)=aT(n/b)          Combine:合并子问题的解, 形成原始问题的解T(n)=C(n) Note: 将规模为n的问题划分为a个子问题,每个问题的大小为n/b。(b可能不等于a!) 时间复...
分类:编程语言   时间:2014-11-25 10:46:48    阅读次数:222
算法导论-------------中位数和顺序统计学
文章来自网络加课本:    本次学习的内容讨论的问题是在一个由n个不同数值构成的集合中选择第i个顺序统计量问题。主要讲的内容是如何在线性时间内O(n)时间内在集合S中选择第i小的元素,最基本的是选择集合的最大值和最小值。一般情况下选择的元素是随机的,最大值和最小值是特殊情况,书中重点介绍了如何采用分治算法来实现选择第i小的元素,并借助中位数进行优化处理,保证最坏保证运行时间是线性的O(n)。...
分类:编程语言   时间:2014-11-22 09:21:35    阅读次数:286
二路归并排序
二路归并排序主要运用了“分治算法”,分治算法就是将一个大的问题划分为n个规模较小而结构相似的子问题。这些子问题解决的方法都是类似的,解决掉这些小的问题之后,归并子问题的结果,就得到了“大”问题的解。 二路归并排序主旨是“分解”与“归并” 分解: 1.将一个数组分成两个数组,分别对两...
分类:编程语言   时间:2014-11-16 23:03:55    阅读次数:2377
算法实验--棋盘覆盖
一、实验目的:熟悉掌握分治算法设计技术二、实验要求:1、按教材所授内容要求,完成“棋盘覆盖问题”算法。得到一个完整正确的程序。2、棋盘大小:32*32(或16*16)3、输出最终结果。三、实验设备及环境:PC机一台、java虚拟机Eclipse或jdk环境四、问题描述:通过一门语言写一个棋盘覆盖算法...
分类:编程语言   时间:2014-11-15 21:44:50    阅读次数:666
算法实验--线性时间
一、实验目的:熟悉掌握分治算法设计技术。二、实验要求:1、按教材所授内容要求,完成“线性时间选择问题”算法。得到一个完整正确的程序。2、问题规模:不少于20003、输出最终结果。三、实验设备:PC机一台四、问题描述:运用分治法的原理,对随机生成的数进行查找,找出其中第K大小的数,找出之后输出所找到的...
分类:编程语言   时间:2014-11-15 21:37:28    阅读次数:629
HDU 3842 Machine Works cdq分治 斜率优化
本题是利用cdq分治  实现斜率优化的一个题目 斜率优化之前做的几个题都是斜率单调,并且插入点时由于点在某一维单调,所以仅仅操作队首和队尾就能完成优化了 但是本题显然不是  主要参考了两个东西 从《Cash》谈一类分治算法的应用 (Day1)cdq分治相关 这两个直接在百度上搜 ,第一个出来的就是 本题的题意是 一个公司获得了一个厂房n(10^5)天的使用权...
分类:系统相关   时间:2014-11-08 15:22:58    阅读次数:261
第十五章 动态规划——钢条切割
前言:动态规划的概念 动态规划(dynamic programming)是通过组合子问题的解而解决整个问题的。分治算法是指将问题划分为一些独立的子问题,递归的求解各个问题,然后合并子问题的解而得到原问题的解。例如归并排序,快速排序都是采用分治算法思想。本书在第二章介绍归并排序时,详细介绍了分治算法....
分类:其他好文   时间:2014-11-06 10:48:17    阅读次数:204
POJ1987——Distance Statistics
Distance Statistics Time Limit: 2000MS   Memory Limit: 64000K Total Submissions: 1667   Accepted: 532 Case Time Limit: 1000MS Description Frustrated at the number of d...
分类:其他好文   时间:2014-11-05 13:10:43    阅读次数:217
分治算法求解序列最大子和问题
特别的,当序列所有整数均为负整数时,其最大子和为0。 1 #include 2 3 int caluMaxSubSum(int *array, int left, int right); 4 5 int main() 6 { 7 int array[6] = {2, -2, 3,...
分类:编程语言   时间:2014-11-01 16:17:18    阅读次数:137
分治算法——Karastsuba算法
分治(Divide and Conquer)算法:问题可以分解为子问题,每个问题是可以独立的解决的,从子问题的解可以构建原问题。 Divide:中间分、随机分、奇偶分等,将问题分解成独立的子问题 Conquer:子问题的解可以单独解决,从子问题的解构建原问题最终的解 Combine:每一步将子问题产生的解进行合并得到最终的解,合并的复杂度影响最终的算法时间复杂度 Karatsuba算法是在...
分类:编程语言   时间:2014-11-01 01:03:41    阅读次数:339
353条   上一页 1 ... 30 31 32 33 34 ... 36 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!