//快速排序
public class Quick_Sort {
// 排序的主要算法
private int Partition(int[] data, int start, int end)
{
int mid_data = data[end];// 选取最后最个数作为中间值哨兵,从开始进行遍历,每个数与之比较
int index = start; // 记录比哨兵小的数字在...
分类:
编程语言 时间:
2015-03-15 12:30:38
阅读次数:
131
var ary = [8,9,10,3], compare = function(a,b){ return b.age-a.age; }, g = [ { name:"jim", age:29 }, { name:"tom", age:15 ...
分类:
编程语言 时间:
2015-03-14 15:15:19
阅读次数:
125
//总结一下,结构体数据排序的快速写法//以后在遇到需要写的时候,不要迟疑快速写完struct node{ int u, v, w; }a[10000]; //假设该结构体有3个元素//现在仅实现结构体数组按照w的值从小到大的排序//1.基于C++的重载写法,写在结构体的定义内 如下:str...
分类:
编程语言 时间:
2015-03-10 22:56:13
阅读次数:
293
列表(list)list是可以修改的(字符串和Tuple则不能修改)列表中的常用方法list.append(x) #把x加入表尾
list.insert(i,x) #在第i个元素之前插入x
list.remove(x) #删除列表中值为x的第一个元素
list.count(x) #返回x在列表中出现的次数
list.sort() #排序
list.reverse() #倒排
list.index(x...
分类:
编程语言 时间:
2015-03-09 22:32:56
阅读次数:
332
TopN算法:从已经存在的数组中,找出最大(或最小)的前n个元素。算法(以找最大的n个元素为例):
1. 取出数组的前n个元素,创建长度为n的小根堆;
2. 从n开始循环数组的剩余元素,如果当前元素比小根堆的根节点大,则将当前元素设置成小根堆的根节点,并通过调整让堆保持小根堆;
3. 循环完成后,小根堆中的所有元素就是需要找的最大的n个元素;
4. 根据需要对小根堆中的所有元素继续利用堆排序...
分类:
编程语言 时间:
2015-03-08 18:52:17
阅读次数:
203
基本冒泡排序冒泡排序是最常见的交换排列。void BubbleSort0 (int data[], int n) // index[1, n]
{
for (int i = 1; i < n; ++i) {
for (int j = 1; j data[j + 1]) {...
分类:
编程语言 时间:
2015-03-08 15:45:25
阅读次数:
141
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较...
分类:
编程语言 时间:
2015-03-06 23:33:38
阅读次数:
196
Comparator是个接口,可重写compare()及equals()这两个方法,用于比价功能;如果是null的话,就是使用元素的默认顺序,如a,b,c,d,e,f,g,就是a,b,c,d,e,f,g这样,当然数字也是这样的。
compare(a,b)方法:根据第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数。
equals(obj)方法:仅当指定的对象也是一个 Compara...
分类:
编程语言 时间:
2015-03-06 15:55:07
阅读次数:
155
在linux中,使用sort按行进行排序是很简单的。不过有时,生活总是爱抛给你一个一个的问题。如果使用sort按多个列值排列,同时使用tab作为分隔符,而且对于某些列需要进行逆序排列,这样sort命令来实现就略显折腾。来看具体的例子吧。比如下面的文件内容,使用[TAB]进行分割:name sc...
分类:
编程语言 时间:
2015-03-03 22:06:11
阅读次数:
209
算法介绍桶排序 (Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶子里。每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序)。桶排序是鸽巢排序的一种归纳结果。当要被排序的数组内的数值是均匀分配的时候,桶排序使用线性时间(O(n))。但桶排序并不是 比较排序,他不受到 O(n log n) 下限的影响。算法步骤如下:...
分类:
编程语言 时间:
2015-03-01 15:47:24
阅读次数:
208