基本思想
快速排序也是基于分治算法得。步骤如下:
(1)选择一个基准元素,通常选择第一个元素或者最后一个元素;
(2)通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的元素值均比基准元素值小。另一部分记录的元素值比基准值大;
(3)此时基准元素在其排好序后的正确位置;
(4)然后分别对这两部分记录用同样的方法继续进行排序,直到整个序列有序。
上图中,演示的是第一...
分类:
编程语言 时间:
2015-08-10 09:26:13
阅读次数:
220
public class KeyGenerator { private static KeyGenerator keygen=new KeyGenerator(); private static final int POOL_SIZE=20; private HashMap keyList=new ...
分类:
其他好文 时间:
2015-08-10 07:04:21
阅读次数:
102
public class MutilKeyGenerator { private static HashMap keys=new HashMap(); private static final int POOL_SIZE=20; private KeyInfo keyInfo=null; priva...
分类:
其他好文 时间:
2015-08-10 07:03:49
阅读次数:
110
题意:给你一个排列,每次可以交换两个整数(不一定要相邻),求最少交换次数把排列变成一个1~n的环形排列。(正反都算)其实就是找环了,对于一个链状序列,最小交换次数等于不在对应位置的数字个数减去环的个数。至于证明这里讲的比较详细:http://www.dewen.io/q/7967#ans16319所...
分类:
其他好文 时间:
2015-08-10 01:38:03
阅读次数:
121
10. 蛤蟆的数据结构进阶十排序相关概念
本篇名言:“生,亦我所欲也;义,亦我所欲也:二者不可得兼,舍生而取义者也。--
孟轲”
接下去我们将来看下排序相关的知识。
欢迎转载,转载请标明出处:
1. 排序
排序是什么?
将一组杂乱无章的记录按一定规律顺序排列起来。
什么排序方法是稳定的?什么是不稳定的?
假定在待排序的记录序列中,存...
分类:
编程语言 时间:
2015-08-10 00:29:14
阅读次数:
202
Java中用UTF-16编码字符(见博文Java 正确遍历字符串),Charset类建立了UTF-16编码的字节序列和其它字符编码方式的字节序列之间的映射。当从外面读入表示字符的字节流时,我们可以通过Charset类指定原来字符的编码方式,好让程序可以正确的把字符原来的字节编码转化为Java自己的字节编码;同样,当把字符写出时,我们可以通过Charset指定字符的编码方式。下面举两个简单的例子来说...
分类:
编程语言 时间:
2015-08-10 00:26:17
阅读次数:
174
【POJ 1442】 Black Box向一个恒递增序列中加数 一开始序列为空 不断加m个数 有n个询问 x1x2x3…xi每次个询问表示加第x个数后 第i小的数是几两个优先队列进行维护 一个递增一个递减 令递增队列对首为当前第i小的数 因此递减队列需要存i前的数
每当序列需要加一个数时 先与递减队列比较
如果比递减队列队首(前i-1个数中最大的数)小 将该数入递减队列 把递减队列对首拿出加...
分类:
其他好文 时间:
2015-08-10 00:20:13
阅读次数:
137
【POJ 2442】Sequence优先队列 m个序列 每个序列n个数 从每个序列中取一个数 可以组成一个长为m的序列 这样一共有n^m种组法 把所有组合的加和排序后输出前n小的和乍一看听高深的一个问题 其实想清楚了很简单
每一组中取一个数相加 第一组可以有n种取法
假设当前只有两组 按题意组合就是将第一组中n个数分别与第二组n个数相加 取出前n小的和那么现在再来一组 前两组一共有n*n种组...
分类:
其他好文 时间:
2015-08-10 00:19:09
阅读次数:
118
@interface ViewController ()#define FileName @"Student.plist"#define KName @"KName"#define KBirth @"KBirth"#define KSex @"KSex"#define KNumber @"KNumb...
分类:
其他好文 时间:
2015-08-10 00:16:15
阅读次数:
173
#include #include #include #include #include #include #include #define lson l,mid,os2[j]&&maxxans) ans=dp[j]; } printf("%d\n",ans); }...
分类:
其他好文 时间:
2015-08-09 23:56:25
阅读次数:
186