Heim > Artikel > Backend-Entwicklung > C#-Blasensortierung
C#-Blasensortierung
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Sort { class BubbleSorter { public static int[] Sort(int[] a) { BubbleSort(a); return a; } private static void BubbleSort(int[] myArray) { for (int i = 0; i < myArray.Length; i++)//循环的趟数 { for (int j = 0; j < myArray.Length - 1- i; j++)//每次循环的次数 { //比较相邻元素,将值大的后移==》每一趟循环结束==》最后一个数是最大的。 //所以每次循环都比上一次循环的个数少1,即j < myArray.Length - 1- i if (myArray[j] > myArray[j + 1]) { Swap(ref myArray[j], ref myArray[j + 1]); } } } } //引用参数与值参数 private static void Swap(ref int left, ref int right) { int temp; temp = left; left = right; right = temp; } } } 冒泡排序算法的运作如下:
Die Funktionsweise des Blasensortierungsalgorithmus ist wie folgt:
1. Vergleichen Sie benachbarte Elemente. Wenn das erste größer als das zweite ist, tauschen Sie beide aus.
2. Machen Sie die gleiche Arbeit für jedes Paar benachbarter Elemente, vom ersten Paar am Anfang bis zum letzten Paar am Ende. Zu diesem Zeitpunkt sollte das letzte Element die größte Zahl sein. ==》Die letzte Zahl muss nicht verglichen werden, da sie die größte ist.
3. Wiederholen Sie die obigen Schritte für alle Elemente außer dem letzten.
4. Wiederholen Sie die obigen Schritte jedes Mal für immer weniger Elemente, bis keine Zahlenpaare mehr zum Vergleichen vorhanden sind.
Das Obige ist der Inhalt der C#-Blasensortierung. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!