看书、思考、写代码!
/***************************************
* copyright@hustyangju
* blog: http://blog.csdn.net/hustyangju
* 题目:分治法求数组最大连续子序列和
* 思路:分解成子问题+合并答案
* 时间复杂度:O(n lgn)
* 空间复杂度:O(1)
********...
分类:
编程语言 时间:
2014-11-05 23:17:53
阅读次数:
209
什么是快速排序
快速排序可以说是对冒泡排序的一种改进,通过选择某个基准点经过一次排序,然后把数据通过基准点分为两个部分。一部分小于基准点;一部分大于基准点;
实现过程
设要排序的数据存放在数组A[0]...A[N-1]中,然后从数组总任意选择一个数据作为基准点,将所有比基准点小的数据放到它的前面,比它小的放到它的后面,这样经过一次交换就分成了两个独立的部分。接着在运用分治的思想...
分类:
编程语言 时间:
2014-11-05 23:16:01
阅读次数:
250
分治法在将大问题一步一步两两分,直到划分成可以解决的小问题时,求出这些小问题的解,然后再将小问题合成大问题的解,但是前提是这些小问题在求解是不受到其他小问题的解的影响的。...
分类:
其他好文 时间:
2014-11-05 17:12:01
阅读次数:
158
高速排序因为排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被採用,再加上高速排序思想----分治法也确实有用,因此非常多软件公司的笔试面试,包含像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也经常出现高速排序的身影。总的说来,要直接默写出高速排序...
分类:
编程语言 时间:
2014-11-05 14:31:13
阅读次数:
222
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
求最大子数组的和,算法导论只分治递归求解,暴力求解,记忆扫描方法。...
分类:
编程语言 时间:
2014-11-04 09:25:49
阅读次数:
186
?比较著名的算法有 冒泡法,贪?心算法,递归法,迭代法,分治法,动态规划法,分?支限界 法,回溯法,A*寻路算法 等等。? ps:记录下,日后多多练习这些算法。
分类:
编程语言 时间:
2014-11-03 06:49:37
阅读次数:
208
/* 动态规划和分治法相似,都是通过组合子问题的解来求解原问题。 但分治法是将问题划分为互不相交的子问题,递归地求解子问题,再将它们的解组合起来,求出原问题的解。与之相反,动态规划应用于子问题重叠的情况,即不同的子问题具有公共的子问题。在这种情况下,分治法会做很多不必要的工作。 动态规划...
分类:
其他好文 时间:
2014-11-03 01:15:38
阅读次数:
282
/*------------------ 求解最大子数组问题 --------------- 最大子数组,就是求解一个数组的所有元素的各种组合中,和最大的那个子数组。在这种情况下,如果元素值全部非负,那么最大子数组当然是所有元素。但是如果有负值的元素存在,那么久需要找到一个由数组中连续几个...
分类:
编程语言 时间:
2014-11-02 20:48:31
阅读次数:
324
注:网上搜的第一篇 1001 这个就不用说了吧1002 简单的大数1003 DP经典问题,最大连续子段和1004 简单题1005 找规律(循环点)1006 感觉有点BT的题,我到现在还没过1007 经典问题,最近点对问题,用分治1008 简单题1009 贪心1010 搜索题,剪枝很关键1011 10...
分类:
其他好文 时间:
2014-11-02 20:47:02
阅读次数:
939