#include
int swap(int *a,int *b)
{
int t=*a;
*a=*b;
*b=t;
}
/*
冒泡排序的原理:每次在无序队列里将相邻两个数依次进行比较,将小数调换到前面,
逐次比较,直至将最大的数移到最后。最将剩下的N-1个数继续比较,将次大数移至倒数第二位。
依此规律,直至比较结束。
冒泡排序的代码如下:
*/
void ...
分类:
编程语言 时间:
2014-12-07 15:05:38
阅读次数:
201
选择排序就是第一个数和后面的比较;在是第二个 依次进行;每次把最大或者最小的排出来。#includeint fun(int *a,int n){ //调用的函数 for (int i=0; ia[j]) {//固定的值和后面比较 int m=a[i];//定义一个第三个量来过度 比较的两者交换,把i...
分类:
编程语言 时间:
2014-12-04 21:11:39
阅读次数:
254
排序需要栗子,举个栗子先
23 32-1 42 32-2 24 17 71 33
32-1 和 32-2代表两个相同的数字32,只不过位置不同,用来判断排序是否稳定
稳定的意思就是: 排在前面的数字排序之后依旧在前面
选择排序 -- 不稳定
1.每轮找到最小的下标 17-->6(下标) , 23 -->1(下标)...
分类:
编程语言 时间:
2014-12-01 22:36:35
阅读次数:
252
各种排序方法的性能比较
排序方法
最好时间复杂度
平均时间复杂度
最坏时间复杂度
空间复杂度
稳定性
直接插入排序
O(n)
O(n2)
O(n2)
O(1)
稳定
简单选择排序
O(n2)
O(n2)
O(n2)
O(1)
不稳定
冒泡排序
O(n)
O(n2)
O(n2)
O(1)
稳定
希尔排序
-
...
分类:
编程语言 时间:
2014-11-29 20:15:57
阅读次数:
218
1:选择排序package pack;public class Demo {//选择排序 public static void main(String[] args) { int[] arr = {1,22,32,4,52,61}; int temp; for(int i=0;iarr[j])...
分类:
编程语言 时间:
2014-11-29 15:56:49
阅读次数:
135
首先,对数组元素进行排序方法总结为以下三种:1.插入排序2.选择排序3.交换排序,即冒泡排序接下来,分别对其进行讨论:1.插入排序算法思想:每一步将一个待排序元素按其关键字值的大小插入到已排序序列的适当位置上,直到待排序元素插入完为止。算法实现:测试结果:2.选择排序算法思想:每次从待排序序列中选择...
分类:
编程语言 时间:
2014-11-28 14:15:48
阅读次数:
231
六大比较排序算法:冒泡排序,选择排序,插入排序,归并排序,堆排序和快速排序,伪代码与C语言实现
分类:
编程语言 时间:
2014-11-28 11:34:09
阅读次数:
273
//选择排序,前提必须了解找到数组中最小数和最大数的算法# include# include# includeint main(){ //利用时间随机数生成数组 time_t ts; unsigned int data = time(&ts); srand(data); ...
分类:
编程语言 时间:
2014-11-27 23:32:14
阅读次数:
308
选择排序:是一种非常简单直观的算法。 问题:有一组数字[23,34,12,756,49,56],需要对它们进行从小到大的排序。 原理:首先让没有排序的数字进行比较,将最小的数字排在排序序列的第一位;然后,再从剩余地未排序的数字中找出最小的数字,放在排序序列的第二位;以此类推... 下面是利...
分类:
编程语言 时间:
2014-11-25 23:19:37
阅读次数:
154