內部排序彙總

2021-09-25 16:21:54 字數 3940 閱讀 2690

最近在複習各種內部排序演算法,照著書上的偽**敲了一遍,排序演算法實現本來不難,主要理解每種演算法的思路和複雜度以及穩定性。

源**

#include

#include

#define n 150

#include

void

insertsort

(int a)

a[j+1]

=a[0];

}}void

shellsort

(int a)

a[j+dk]

=a[0];

}}}void

bubblesort

(int a)

}if(flag==0)

break;}

}int

partition

(int a,

int low,

int high)

a[low]

=p;return low;

}void

quicksort

(int a,

int low,

int high)

}void

selectsort

(int a)

if(m!=i)}}

void

adjustdown

(int a,

int k,

int len)

} a[k]

=a[0];

}void

buildmaxheap

(int a)

void

heapsort

(int a)

}void

merge

(int a,

int low,

int mid,

int high)

for(i=low,j=mid+

1,k=i;i<=mid&&j<=high;k++

)while

(i<=mid)a[k++

]=b[i++];

while

(j<=high)a[k++

]=b[j++];

}void

mergesort

(int a,

int low,

int high)

}void

judge

(int a)

}if(flag==0)

else

}int

main()

printf

("\n");

for(i=

0;i<

115;i++

)printf

("*");

printf

("\n\n");

insertsort

(b);

shellsort

(c);

bubblesort

(d);

quicksort

(e,1

,n);

selectsort

(f);

heapsort

(g);

mergesort

(h,1

,n);

printf

("直接插入排序如下:\n");

for(i=

1;i<=n;i++

)judge

(b);

printf

("\n");

printf

("希爾排序如下:\n");

for(i=

1;i<=n;i++

)judge

(c);

printf

("\n");

printf

("氣泡排序如下:\n");

for(i=

1;i<=n;i++

)judge

(d);

printf

("\n");

printf

("快速排序如下:\n");

for(i=

1;i<=n;i++

)judge

(e);

printf

("\n");

printf

("選擇排序如下:\n");

for(i=

1;i<=n;i++

)judge

(f);

printf

("\n");

printf

("堆排序如下:\n");

for(i=

1;i<=n;i++

)judge

(g);

printf

("\n");

printf

("歸併排序如下:\n");

for(i=

1;i<=n;i++

)judge

(h);

printf

("\n");

return0;

}

內部排序彙總

直接插入排序 直接插入排序 void insertsort int a,int n if flag false 快速排序 參考之前文章 快速排序 一趟快速排序,劃分 int partition int a,int low,int high else a start a 0 被篩選結點的值放入最終位置...

內部排序演算法彙總

3.快速排序 4.選擇排序 5.歸併排序o nlogn 6.桶排序 7.各個排序演算法比較 大部分演算法中,待排記錄的資料型別設為 define maxsize 20 乙個用作示例的小順序表的最大長度 typedef int keytype 定義關鍵字型別為整數型別 typedef struct r...

九大內部排序彙總

插入排序 名稱 穩定性時間複雜度 空間複雜度 直接插入排序 穩定o n2 o 1 折半插入排序 穩定o n2 o 1 希爾排序 不穩定o n2 特定n n1.3 o 1 交換排序 名稱 穩定性時間複雜度 空間複雜度 氣泡排序 穩定o n2 o 1 快速排序 不穩定o n2 o n 平均o nlog2...