冒泡排序与选择排序的不同、快速排序与选择排序的结合
2010-05-04 23:59
309 查看
冒泡排序与选择排序的不同、快速排序与选择排序的结合
冒泡排序可以说是最简单的排序了。我们学习C语言循环的时候都会提到。
可见这是一种浅而易懂的排序算法!
但不见得这种算法就没用处。首先,他很容易理解,这样在各种教材中比较适合拿来“开门见山”。其次是他很稳定。 若明确知道即将排的数字很混乱,随机性很强,则用冒泡排序也未偿不可。 谁让他始终是O(n^2)呢。
冒泡排序法代码:
1void BubbleSort(int a[],int l)
2void SelectSort(int a[],int l)
2void QSort(int a[],int l,int r)
2 int p;
4 if(l<r)
5 if(l-r<= DEFINE_NUMBER)
7 SelectSort(a,l,r);
8 else
9 p = Partition(a,l,r);
QSort(a,l,p-1);
QSort(a,p+1,r);
}
}
}
冒泡排序可以说是最简单的排序了。我们学习C语言循环的时候都会提到。
可见这是一种浅而易懂的排序算法!
但不见得这种算法就没用处。首先,他很容易理解,这样在各种教材中比较适合拿来“开门见山”。其次是他很稳定。 若明确知道即将排的数字很混乱,随机性很强,则用冒泡排序也未偿不可。 谁让他始终是O(n^2)呢。
冒泡排序法代码:
1void BubbleSort(int a[],int l)
2void SelectSort(int a[],int l)
2void QSort(int a[],int l,int r)
2 int p;
4 if(l<r)
5 if(l-r<= DEFINE_NUMBER)
7 SelectSort(a,l,r);
8 else
9 p = Partition(a,l,r);
QSort(a,l,p-1);
QSort(a,p+1,r);
}
}
}
相关文章推荐
- 冒泡排序与选择排序的不同、快速排序与选择排序的结合
- 冒泡排序与选择排序的不同、快速排序与选择排序的结合
- PHP四种基础算法详解(冒泡排序、选择排序、插入排序、快速排序)
- 四种基本的排序方法:冒泡排序,选择排序,插入排序,快速排序
- Java实现四种排序:桶排序,冒泡排序,选择排序,快速排序
- 冒泡排序,选择排序,插入排序,快速排序的比较及优化
- 易混的排序算法:冒泡排序、选择排序、快速排序
- 冒泡排序是选择排序的退化版,再就是一组数中求几个最小的数选择什么方法要根据不同情况进行分类
- 冒泡排序,选择排序,快速排序
- 排序--选择排序,插入排序,冒泡排序,shell排序,快速排序(递归,迭代,改进版本),归并排序
- Java排序算法(冒泡排序、选择排序、插入排序、反数组排序、快速排序)例子
- 四基础排序算法:插入排序、选择排序、冒泡排序、快速排序
- 算法导论之插入排序,选择排序,归并排序,冒泡排序,希尔排序,堆排序,快速排序的c语言实现
- java中各种常用排序实现(直接插入排序、直接选择排序、堆排序、冒泡排序、快速排序和归并排序)
- 数据结构与算法:七种排序算法总结(冒泡排序、选择排序、直接插入排序、希尔排序、堆排序、归并排序、快速排序)
- 最简单之Java实现冒泡排序、选择排序、插入排序、希尔排序、归并排序和快速排序(转载请注明出处)
- java实现冒泡排序,插入排序,选择排序,快速排序
- 【C语言】冒泡排序,选择排序,快速排序
- Java排序法(冒泡排序、选择排序、快速排序)
- 选择排序,冒泡排序,快速排序(从小到大)