下面是個人整理的幾種排序演算法,不算太難,有一定基礎的認真看看都可理解。歸併演算法思想比較簡單,但在寫**時要注意處理好邊界問題,注意對陣列的賦值和改變。
(選擇排序)
//選擇排序
public class n1_1
public n1_1(int a)
public int result()
}temp = a[i];
a[i] = min;
a[index] = temp;
} return a;
} public static void main(string args) ;
n1_1 n = new n1_1(a);
a = n.result();
for(int i = 0; i < a.length; i++)
}}
(氣泡排序)
public class n1_2
public n1_2(int a)
public int result()
}} return a;
} public static void main(string args) ;
n1_2 n = new n1_2(a);
a = n.result();
for(int i = 0; i < a.length; i++)
}}
(快速排序)
//快速排序
public class n6_4
v[low] = v[high];
while(low < high && v[low] <= key)
v[high] = v[low];
}v[low] = key;
quicksort(v,left,low-1);
quicksort(v,low+1,right);
} return v;
} public static void main(string args) ;
int v = quicksort(a,0,8);
system.out.println(arrays.tostring(v));
}}
(歸併排序)
public class guibing else
}// 把左邊剩餘的數移入陣列
while (i <= mid)
// 把右邊邊剩餘的數移入陣列
while (j <= high)
// 把新陣列中的數覆蓋nums陣列
for (int k2 = 0; k2 < temp.length; k2++)
}public static int mergesort(int str, int p, int r)
return str;
} public static void main(string args) ;
mergesort(a,0,7);
system.out.println(arrays.tostring(mergesort(a,0,7)));
}}
演算法之常見排序演算法 氣泡排序 歸併排序 快速排序
引言 對於程式設計中琳琅滿目的演算法,本人向來是不善此道也不精於此的,而說起排序演算法,也只是會氣泡排序。還記得當初剛做開發工作面試第一家公司時,面試官便讓手寫氣泡排序 入職之後才知道,這面試官就是乙個氣泡排序 病態 愛好者,逢面試必考氣泡排序 後來看吳軍的一些文章,提到提高效率的關鍵就是少做事情不...
排序演算法 氣泡排序,歸併排序,快速排序
氣泡排序 屬於交換排序的一種。很好理解的交換排序是這樣的 for int i 0 i n i for int j i 1 j n j 這個演算法的邏輯是從頭到尾掃瞄元素,將這個元素和它後面的所有元素進行比較,如果有比它更小的,那就交換,最後交換的一定是最小的,然後元素指標i後移,再比較它後邊的所有元...
java 快速排序演算法與氣泡排序演算法
首先看下 氣泡排序演算法與快速排序演算法的效率 如下的是main方法 description author cuiyaonan2000 163.com date 2014年11月5日 下午1 02 10 public static void main string args long beforeq...