[問題] 冒泡排序的問題

作者: kdok123 (小天)   2014-09-08 20:57:48
void bubblesort(int k[],int n)
{
bool flag=1;
int count1=0, count2 = 0;
for(int i=0; i<n-1 && flag ; i++){
flag = 0;
for(int j=1; j<n-i; j++){
//for(int j=n-1; j>i; j
作者: Feis (永遠睡不著 @@)   2014-09-08 21:08:00
你想想 flag 的意義. 拿掉 count1 會一樣嗎?至於 count2 為什麼一樣就想想交換鄰居對於順序的影響不管哪種 for , 元素都只會往他應該在的順位透過交換移動
作者: putumaxally (putumaxally)   2014-09-08 21:17:00
flag初值設1,進入迴圈馬上被洗掉我眼殘@@
作者: kdok123 (小天)   2014-09-08 21:36:00
F大: 我知道flag拿掉會不一樣,也知道count2一樣想知道的是為什麼for從低和從高count1的效率會不一樣呢?
作者: Feis (永遠睡不著 @@)   2014-09-08 21:50:00
所以你不懂兩個 for 的 flag 不同?flag 為0沒有需要交換的…順序不同 flag 變成 0 的回合數不這是邏輯問題…估計會被砍文章XD想一下 5 1 2 3 4 在兩種 for 的差異… count1 各是多少?

Links booklink

Contact Us: admin [ a t ] ucptt.com