冒泡 快速排序

2022-03-19 19:56:54 字數 1164 閱讀 4108

protected void page_load(object sender, eventargs e)

;//bubblesort(ary);

quicksort(ary, 0, ary.length - 1);

for (int i = 0; i < ary.length; i++)

}///

///氣泡排序

///將第乙個記錄ary[0]與第二個記錄ary[1]比較,若前者大於後者,則兩則交換位置。

/// 然後,對新的第二個記錄ary[1]和第三個記錄ary[2]比較,做同樣的處理。

/// 依此類推,直到處理完第n-1個記錄和第n個記錄。

/// 經過這次起泡,n個記錄中最大者被安置到第n個位置上。

/// 此後,再對前n-1個記錄進行同樣處理,使n-1個記錄中的最大者被安置到整個序列的第n-1個位置上。

/// 然後,再對前n-2個記錄重複上述過程...這樣最多做n-1次起泡就能完成排序。

///

///

///

private void bubblesort(int ary)

}if (bdone) break; //本趟起泡未發生記錄交換,演算法結束}}

///

///快速排序

///

///

///

///

private voidquicksort(int ary, int begin, int end)

///

///一次快速排序

/// 在待排序的n個記錄中取第乙個記錄,把所有小於該記錄的記錄移到其左邊,大的移到右邊

///

///

///

///

///

private intquicksort_once(int ary, int begin, int end)

ary[i] = tmp;  //此時i=j

return i;  //得到傳入陣列ary的首元素的最終位置

}

氣泡排序,快速排序

氣泡排序 氣泡排序 英語 bubble sort 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。...

氣泡排序 快速排序

一 氣泡排序 演算法步驟 以n個數排序,從小到大排為例說明。1 待排序數中,從第1個數開始,每個數與它後面的數比較,若逆序則交換。完成後則最大數排到最後,待排序數個數減少乙個。2 若待排序數個數為1,則它就是最小數,排在首位。否則,回到第 1 步。具體講解如下 第一趟 第1 2個數比較,若逆序則交換...

氣泡排序,快速排序

實現思路 每次從陣列裡面選出乙個最大值,一直遞迴 它的最優時間複雜度為o n 正序,陣列排好情況下 最糟糕時間複雜度為o n 2 反序 陣列排序剛好相反 function bubblesort arr return arr 返回最終結果 arrtest 12,43,54,33,23,14,44,53...