隨機產生及氣泡排序 選擇排序 直接插入排序

2021-08-09 16:02:58 字數 891 閱讀 3760

歡迎加qq群:453398542 學習討論,會定期分享資料課程,解答問題。

隨機產生及氣泡排序、選擇排序、直接插入排序

#include

#include

#include

#define n 40 

int main(){

int i,j,a[n],b,n,k;

int f=1;

int t;

printf("輸入整數個數:\n");

scanf("%d",&n);

srand(time(0));

for (i=0;ib=rand()%90+10;

for (j=0;jif (b==a[j])

f=0;

if (f){

a[i]=b;

for (i=0;iprintf("%3d",a[i]);

printf("\n\n");

//直接插入

for (i=1;it=a[i];  //保留新來的數

for (j=i-1;j>=0&&a[j]>t;j--){

a[j+1]=a[j];

a[j+1]=t;

/*選擇

for (i=0;ik=i;

for (j=i+1;jif (a[j]k=j;

if (i!=k){

t=a[i];

a[i]=a[k];

a[k]=t;

/*冒泡

for (i=0;ifor (j=0;jif (a[j]>a[j+1]){

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

for(i=0;iprintf("%3d",a[i]);

return 0;

氣泡排序和直接選擇排序

includeint array 100 void sortarray int array,int n 小到大排,直接選擇排序 void sortarray1 int array,int n 小到大排,氣泡排序 int main return 0 sortarray這種是上面flash演示的 但 不...

氣泡排序及選擇排序

對一組元素進行氣泡排序,從左向右或從右向左排序,每次對相鄰兩個數進行比較,根據自己需求 公升序或者降序 決定是否調整順序。每次完成一次冒泡,都在未排序列中會產出乙個最大或最小值並將該值確定位置 1.如果是將序列從右向左兩兩比較,那麼每次冒出的最大數或者最小數將出現在最左邊 在未排序的序列前面 2.如...

選擇排序 直接選擇排序

演算法思想 在每一趟的排序中,從待排序列中選出關鍵字最小或者最大的元素放在其最終的位置上 過程分析 在第i趟直接排序中,通過n i次關鍵字的比較,從n i 1個元素中選出關鍵字最小的元素 與第i個元素進行交換。經過n 1趟比較,直到表有序為止 效能分析 時間複雜度o n 2 include defi...