Quick Sort In Java. public?static?void?quickSort(int[]?a,?int?p,?int?r)?{
????????if?(p?<?r)?{
????????????int?q?=?partition(a,?p,?r);
????????????...
分类:
编程语言 时间:
2014-08-29 05:13:37
阅读次数:
251
快速排序是一种平均性能很好的算法,它的期望运行时间是O(nlgn),且其中隐藏的常数因子非常小。但是它的最坏运行时间是O(n^2)。最后我会对其进行分析。快速排序关键部分分为两部分:
1.数组划分过程:
将一个数组以其最后一个元素作为主元,并且围绕它来划分数组,使得在此元素之前的数组元素均小于它,在其后的数组元素均大于它,划分过程如下:
实现代码如下:
int Partition(...
分类:
编程语言 时间:
2014-08-28 22:49:46
阅读次数:
390
题意就是整数划分,选出和为n的K个整数,其中K-1个数的和为完全平方数S。选择整数时需要从1,2,3..连续选择,当选择整数与n-S相等时,需要跳过n-S,即选择n-S+1。如此选择K-2个数,从而可确定第K-1个数,若该数已经出现(小于或等于K-2),则划分失败;若第K-1个数不等于n-S,则肯定...
分类:
其他好文 时间:
2014-08-27 20:21:38
阅读次数:
182
快速排序的分治的两种实现方式1,两个指针分别从前面和后面向中间移动// 快速排序有两种partition的方式 // 方式一:两个指针从两端向中间靠拢 private int partation1(int[] array, int start, int end) { int...
分类:
其他好文 时间:
2014-08-26 19:18:06
阅读次数:
178
Oracle分析函数 --row_number():连续不重复 1234567 --rank():跳跃可重复 12333678 --dense_rank():连续可重复 12333456 row_number()?over(partition?by?deptno?order?by?sal?desc) ? over( partitio...
分类:
数据库 时间:
2014-08-26 17:50:06
阅读次数:
323
题目:Partition ListGiven a linked list and a valuex, partition it such that all nodes less thanxcome before nodes greater than or equal tox.You should p...
分类:
其他好文 时间:
2014-08-26 13:08:16
阅读次数:
401
题意:给你N和K,问能否将N拆分成K个互不相同的正整数,并且其中K-1个数的和为完全平方数.PS:这道题目原来是要求输出一种可行方案的,所以下面题解是按照输出方案的思想搞的。分析:我们尝试枚举那个完全平方数S,然后看能否将他拆分为 K-1 个数,并且不用到N-S这一步可以用贪心+一次调整来搞定。为了...
分类:
其他好文 时间:
2014-08-25 22:31:14
阅读次数:
328
#include using namespace std;void swap(int* p,int* q){ int temp = *p; *p = *q; *q = temp;}//快速排序int partition(int *ptr,int first, int last){ ...
分类:
其他好文 时间:
2014-08-25 21:07:04
阅读次数:
268
贪心+数学调整,这里需要比较好的数学想法。当然自己通过推导选出各种情况也是可以的,不过可能稍微麻烦些!不过,这道题目不失为一道好题!...
分类:
其他好文 时间:
2014-08-25 17:03:54
阅读次数:
120
Goffi and Squary Partition
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 374 Accepted Submission(s): 145
Problem Description
R...
分类:
其他好文 时间:
2014-08-25 15:05:34
阅读次数:
176