Wie man Bubble Sort in "C"

May 3

C ist eine Programmiersprache für Computerprogramme zu schreiben. Sortierung ist ein häufiges Problem bei der Programmierung. Beispielsweise, wenn der Datensatz enthält drei Elemente: (20, 7, 66) Sortieren in aufsteigender Reihenfolge Ergebnisse in (20, 7, 66). Eine Art "Blase" ist ein einfacher Algorithmus. Es umfasst mehrere Durchgänge über die Daten vergleichen Bedienelemente und tauscht sie, wenn sie nicht sortiert sind. Um die Sortier-Algorithmus zu implementieren, verwenden Sie eine C-Datenstruktur namens "array", die eine Reihe von Variablen in einer bestimmten Reihenfolge enthält.

Anweisungen

1 Weisen Sie die Größe des Arrays auf die Variable "Größe" in Ihrem C-Programm. Dies ist beispielsweise der Fall, wenn der Datensatz fünf Elemente enthält. Geben Sie

Int-Größe = 5;

2 Definieren Sie das Array in C-Programm:

Int-Array [Size];

3 Addieren von Zahlen aus dem DataSet in das Array; Wenn Elemente des Datasets 2,16, sind z. B. 75, 9 und 1 dann:

Array [0] = 2;

Array [1] = 16;

Array [2] = 75;

Array [3] = 9;

Array [4] = 1;

4 Definieren Sie den Wahrheitswert "vertauscht" benötigt, um den Fortschritt der Sortierung zu steuern. Der Algorithmus endet, wenn diese Variable falsch am Ende des Zyklus Algorithmus bleibt;

Bool vertauscht;

Int Count = 0;

Die Variable "Anzahl" zählt Algorithmus Zyklen.

5 Ihr Programm zu sortieren beginnen fügen Sie die Schleife "while hinzu".

{while(SWAPPED)}

vertauscht = False;

Graf ++;

6 Machen Sie eine Schleife "für", die die Elemente im Array zugreift:

für (Int i = 0; i < Größe-Count; i++)

{

}

Beachten Sie, dass die geschweiften Klammern Befehle innerhalb der Schleife definieren.

7 Vergleichen Sie die benachbarte Elemente des Arrays mit der "if"-Anweisung, um zu bestimmen, ggf. tauschen:

für (Int i = 0; i < Größe-Nummer; i++)

{

if(array[i]>array[i+1])

}

8 Tauschen Sie die benachbarte Elemente ("i" und "i +") Wenn die Bedingung in der "If"-Anweisung ist erfüllt

mithilfe einer temporären Variable "Temp."

für (Int i = 0; i < Größe-Nummer; i++)

{

Wenn (Array [i] > array[i+1])

{

int temp=array[i];

array[i]=array[i+1];

array[i+1]=temp;

swapped=true;

}

}

Tritt austauschen, ist die logische Variable "wahr" zugewiesen. Wenn kein Austausch notwendig ist bleibt die logische Variable "false", die angibt, dass das Array vollständig sortiert ist.

9 Drucken Sie das sortierte Array mit dem Befehl:

für (Int i = 0; i < Größe; i++)

{

Std:: cout << Array [i] << "";

}

In diesem Beispiel das Programm erzeugt folgende Ausgabe: 1 2 9 16 75.

Tipps & Warnungen

  • Arrays in C sind nullbasiert; das erste Element hat den Index "0".