上浮和下沉過程交替的氣泡排序演算法

2021-09-18 02:29:13 字數 1184 閱讀 3137

/*氣泡排序演算法是把大的元素向上移(氣泡的上浮),也可以把小的元素向下移(氣泡的下沉)*/

/*請給出上浮和下沉過程交替的氣泡排序演算法*/

#include #include #define maxsize 20

typedef int keytype;

typedef int infotype;

typedef struct

redtype;

typedef struct

sqlist;

int lt(keytype a,keytype b);

void bubble_up_sort(sqlist*l);

void bubble_down_sort(sqlist*l);

void bubble_alternative_sort(sqlist *l);

int main()

*l1=*l2=*l;

bubble_up_sort(l1);

bubble_down_sort(l2);

bubble_alternative_sort(l);

printf("\n");

return 0;

}int lt(keytype a,keytype b)

}break;

printf("第%d趟上浮氣泡排序的結果:",l->length-i+1);

for(k=0;klength;k++)

printf("\n");

}}void bubble_down_sort(sqlist*l)

}break;

printf("第%d趟下沉氣泡排序的結果:",i);

for(k=0;klength;k++)

printf("\n");

}}void bubble_alternative_sort(sqlist *l)

}printf("第%d趟上浮氣泡排序的結果:",bottom);

for(k=0;klength;k++)

printf("\n");

for(j=top-1;j>bottom;j--)

}break;

printf("第%d趟下沉氣泡排序的結果:",bottom);

for(k=0;klength;k++)

printf("\n");

}}

C語言實現上浮下沉交替的氣泡排序

本文受此文章啟發 主要思路 乙個函式up負責上浮,乙個函式down負責下沉,乙個while迴圈中進行上浮和下沉,同時設定flag判斷是否有上浮下沉操作,如果都沒有則排序結束 實現內容 上浮下沉交替進行的氣泡排序 ps 0號不存元素 vs2019 編譯通過 王大花 2020.8.21 include ...

面經筆經01 交替上浮下沉氣泡排序

參加了一家發展不錯的私企軟開筆試,現場試卷答題,其中有一道題讓我眼前一亮。題目 氣泡排序一次上浮乙個數字,或者下沉乙個數字,現在讓設計乙個交替上浮下沉的冒泡。分析 這個確實從沒有遇到過,感覺很新穎。仔細想想其實也不過如此,只要確定每次的操作 子陣列上下邊界就可以了,可以封裝成函式方便理解和實現。in...

下沉傳遞和冒泡響應的過程

dispatchtoucheven 下沉傳遞 onintercepttouchevent 攔截 ontouch或ontouchevent 冒泡響應 下沉傳遞 a 攔截 if false 下沉傳遞 b 冒泡響應 b 冒泡響應 a 下沉傳遞 a 攔截 if true 冒泡響應 a 那ontouch和on...