ChinaUnix.net
相关文章推荐:

选择排序法

选择排序 Java代码[code]1.public class SelectionSort{ 2. public static void main(String[] args){ 3. int arr1[] = new int[args.length]; 4. for(int i=0;i

by cu_Cbear - Java - 2012-08-21 00:04:02 阅读(1077) 回复(3)

相关讨论

原理: 依次将第1、2、3……n-1个元素同其后面的元素经行比较,如果发现该元素大于其后面的元素,就将该元素同后面的元素调换位置。比较的顺序为:第1个元素同第2、3……n个元素经行比较,第2个元素同第3、4……n个元素经行比较,……,第n-1个元素同第n个元素经行比较。 时间复杂度分析: (1)算的最好时间复杂度 若文件的初始状态是正序的,所需的关键字比较次数C、记录移动次数M分别为: Cmin=n(n-1)/2=O(n2)...

by ebmawei - Java文档中心 - 2008-08-22 11:01:49 阅读(1035) 回复(0)

maopao.txt 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/6929/showart_32719.html

by wwy - Linux文档专区 - 2005-06-25 00:25:49 阅读(967) 回复(0)

java排序2(选择排序) Java代码[code]1.package hello; 2. 3.import java.util.Random; 4. 5./** 6. * 书接上回--冒泡排序 7. * 8. * 选择排序: 它改进了冒泡排序,将必要的交换次数O(N*N)减少到了O(N). 但,比较次数仍然保持为O(N*N). 9. * 然而,选择排序仍然为大记录量的排序提出了一个比较重要的改进, 因为,这些大量的记录需要在内存中移动,这就使交换时间和比较时间 相比起来,交换时间更为重要. 1...

by so_brave - Java - 2012-03-14 17:01:07 阅读(788) 回复(1)

今天闲着没事,翻了翻书,介绍了关于插入排序与归并排序,自己写了个程序,比较了两种算的效能,结果大吃一斤 代码如下 [code] #include #include #include #define cnt 80000 int array[cnt] = {0}; void Insert(void) { int i,j,swap; for(i=1;iswap) { array[j+1]=array[j]; } array[++j]=swap; } } void...

by orochi215 - C/C++ - 2009-10-04 00:39:55 阅读(3163) 回复(3)

[code] #include "istream.h" #include "ostream.h" void qsort(int[],int,int); void main() { int a[]={6,2,4,5,1,3}; int len=sizeof(a)/sizeof(int); qsort(a,0,len-1); for(int i=0;i;pivot) --r; if(l>;=r) break; ...

by qdqiqi - C/C++ - 2003-07-22 16:35:12 阅读(4824) 回复(13)

转:我是孙海龙 java实现选择排序   选择排序是常用内部排序的一种,常见的实现算有直接选择排序和堆排序选择排序的基本思想是每次从待排数据中选择第n小的数据放到排序列表的第n个位置,假如共有N个数据待排,那么经过N-1次排序后,待排数据就已经按照从小到大的顺序排列了。   直接选择排序的思想比较简单:(假设数据放在一个数组a中,且数组的长度是N)   1:从a[0]-a[N-1]中选出最小的数据,...

java

by 听老歌 - Java - 2011-03-09 12:14:04 阅读(1441) 回复(0)

#include #include int partition(int l[], int low, int high) { int pivotkey = l[low]; while(low < high) { while((low < high) && (l[high] >= pivotkey)) high--; l[low] = l[high]; while((low < high) && (l[low] <= pivotkey)) low++; l[high] = l[low]; } ...

by forboa - C/C++ - 2008-04-23 19:08:16 阅读(1374) 回复(1)

单向链表的排序(冒泡) 2008-01-08 16:54 struct note /*结构体定义并声明变量head*/ { int total; struct note * next; }; struct note * sort(struct note * note head) /*排序函数*/ { int i; struct note *p1,*stu,*p2,*p0=NULL; printf("\nSorting..."); if(!head || !head->next) /*没有结点或只有一个结点,直接退出。*/ return head; if(!head->next->next) /*有两个结点,交换两个结点后退出。*/ { if(head->total...

by wpeng5640 - Linux文档专区 - 2009-10-21 08:32:14 阅读(1043) 回复(0)

用c实现的插入排序,先输入10个数,然后利用插入排序进行排序,将结果输出。算简单,可供初学者学习。 #include "stdio.h" #include "conio.h" main() { int a[10],r[11]; int *p; int i,j; for(i=0;ir[0]) { r[j+1]=r[j]; j--; } r[j+1]=r[0]; } for(i=1;i 本文来自ChinaUnix博客,...

by liuxiqin - 网络技术文档中心 - 2007-05-12 01:54:10 阅读(784) 回复(0)

ArrayList可以用来组合任何的对象,但其默认的排序是按对象本身值来排序,而不是应用自定义的,因此需要重新修改ArrayList的Sort方的IComparer接口实现。以下是重新写的IComparer的实现,用了类型反射以做到能适合所有类的排序 性能测试:(仅供参考) 配置:PIII 733 384M内存 Windows2000SP4 .net FrameWork 1.1.4322 SP1 ArrayList容纳100个对象,排序时间大约10~20毫秒 ArrayList容纳1000个对象,排序时间...

by findtec - Java文档中心 - 2008-07-24 14:49:48 阅读(1592) 回复(0)