![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序算法
文章平均质量分 57
weiqianghu
个人主页,欢迎调戏: http://weiqianghu.github.io/
展开
-
排序算法之快速排序
int AdjustArray(int s[], int l, int r) //返回调整后基准数的位置{ int i = l, j = r; int x = s[l]; //s[l]即s[i]就是第一个坑 while (i < j) { // 从右向左找小于x的数来填s[i] while(i = x) j--; if(i < j) { s[i] =原创 2015-06-27 20:26:27 · 469 阅读 · 0 评论 -
排序算法之选择排序
void select_sort(int a[],int len){ int i,j,max,k; for(i=0;i<len;i++) { max=a[i]; k=i; for(j=i;j<len;j++) { if(a[j]<max) { max=a[j]; k=j; } } a[k]=a[i]; a[i]=max; }原创 2015-06-27 20:36:27 · 398 阅读 · 0 评论 -
快速排序
int Partition(int *A,int low,int hight){ int key=A[low]; while(low<high){ while(low=key) --high; swap(A[low],A[high]); wh原创 2015-06-27 16:35:00 · 418 阅读 · 0 评论 -
各种排序算法之比较
1.时间复杂度 时间复杂度为O(n^2)的排序算法:插入排序、冒泡排序、选择排序 时间复杂度为O(nlogn)的排序算法:堆排序、归并排序、快速排序 希尔排序介于这两者之间2.算法稳定性 稳定的排序算法:插入排序、冒泡排序、归并排序和基数排序 不稳定的排序算法:选择排序、快速排序、希尔排序、堆排序原创 2015-06-29 21:49:17 · 954 阅读 · 0 评论 -
快速排序java语言实现
快速排序是很重要的排序算法,但是我在学的时候发现网上没有特别好的例子所以自己动手写了一个。自己动手丰衣足食。package sort;import java.util.Random;public class QuickSort { @SuppressWarnings("unused") public boolean initTestArray(int[] testArr原创 2015-07-25 15:10:27 · 620 阅读 · 0 评论 -
归并排序 java语言实现
package sort;import java.util.Random;public class MergeSort { @SuppressWarnings("unused") public boolean initTestArray(int[] testArray) {// 初始化testArray if (testArray == null) return fals原创 2015-08-02 11:30:59 · 765 阅读 · 0 评论 -
排序算法之插入排序
void InsertSort(DataList& L){ DataType temp;int i,j; for(i=1;i<=L.n-1;i++){ if(L.elem[i].key<L.elm[i-1].key){ temp=L.elm[i]; for(j=i-1;j>=0&&temp.key<L.elm[j].key;j--) L.elm[j+1]=L.elm[j原创 2015-06-29 21:22:28 · 486 阅读 · 0 评论 -
排序算法之冒泡排序
冒泡排序:冒泡排序的的优点是好理解,稳定,再就是空间复杂度低,不需要额外开辟数组元素的临时保存控件,当然了,编写起来也容易。其算法很简单,就是比较数组相邻的两个值,把大的像泡泡一样“冒”到数组后面去,一共要执行N的平方除以2这么多次的比较和交换的操作(N为数组元素),其复杂度为Ο(n²),如图:main(){ int a[5]; int i;原创 2015-06-27 20:30:23 · 471 阅读 · 0 评论