今晚沒事整理乙個相比冒泡、選擇比較快的排序方法,
現在分享給大家:
/****************************************/
// 折半排序法(較快的一種排序方法)
// 思想:先把最小值賦給乙個變數val,
// 然後拿low與high相比較,如果h>l,則h往左
// 移;如h#include
int findsort(int * a, int low, int high)
a[low]=a[high];
while (low//這裡high與low一定相等
a[high] = val;
return a[low]; }
int quitsort(int * a, int low, int high) ;
int i;
quitsort(a,0,6);
for(i=0;i<6;i++)
return 0; }
0 給主人留下些什麼吧!~~
演算法的效率(氣泡排序 選擇排序 快排)
演算法的效率可以用 時間複雜度o n 來度量。時間複雜度反應了程式執行時間隨輸入規模增長而增長的量級,很大程度上能反應演算法的優略程度。我們最開始認識的排序方法有氣泡排序和選擇排序但是這個演算法的效率怎麼樣呢,讓我們來測試一下。首先,我們隨機生成乙個長度為100000的隨機數組,並選用選擇排序的方法...
二叉樹排序,比選擇排序,氣泡排序快很多
初始化乙個長度是100000的隨機數字的陣列 初始化完畢 接下來分別用3種演算法進行排序 選擇法排序,一共耗時15477毫秒 冒泡法排序,一共耗時15801毫秒 二叉樹排序,一共耗時92毫秒 檢視排序結果,是否是不同的陣列物件 i 7d4991ad i 28d93b30 i 1b6d3586 檢視排...
冒泡,選擇,插入排序的效率比較
思想 每次將最大的數字移動到陣列的最後面。比較複雜度和操作複雜度都較高。實現 public static void bubblesort int arr 思想 假設每次最小值 最大值 為第乙個,然後遍歷之後的元素,若有更小的元素,則該元素的下標就為minindex。最後,將最小的值換至第乙個 i 位...