冒泡排序算法原理:
1、比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
2、對每一對相鄰元素作同樣的工作,從開始第一對到結(jié)尾的最后一對。在這一點,最后的元素應(yīng)該會是最大的數(shù)。
3、針對所有的元素重復(fù)以上的步驟,除了最后一個。
4、持續(xù)每次對越來越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對數(shù)字需要比較。
class PRogram{ static void Main(string[] args) { int[] array = new[] { 234, 632, 23, 643, 2, 6, -2, 423, 2342, 43 }; Console.WriteLine("排序前:"); Console.WriteLine(string.Join(",", array)); BubbleSort(array); Console.WriteLine("排序后:"); Console.WriteLine(string.Join(",", array)); Console.ReadKey(); } /// <summary> /// 冒泡排序 /// </summary> /// <param name="sources">目標(biāo)數(shù)組</param> private static void BubbleSort(int[] sources) { int i, j, temp; for (i = 0; i < sources.Length - 1; i++) { // 與后面的元素比較 for (j = 0; j < sources.Length - 1 - i; j++) { if (sources[j] > sources[j + 1]) // > 升序,< 降序 { // 交換元素 temp = sources[j]; sources[j] = sources[j + 1]; sources[j + 1] = temp; } } } }}
新聞熱點
疑難解答