Turbo C + + hat ein paar Namensänderungen durchgemacht , aber da es Standards, die vom American National Standards Institute (ANSI) , Sortier- Routinen mit der gleichen Syntax definiert beschäftigt sind in allen Versionen (einschließlich Turbo C ausführbar, wenn Sie noch haben einen Computer aus den 80er Jahren ) . Turbo C + + ersetzt Turbo C um 1990 , die August 2010 Release heißt C + + Builder XE . Turbo C + + erweitert die Programmiersprache C , daher sind die meisten C -Operationen gilt auch in C + +. Turbo C + + bietet viele verschiedene Sortier- Algorithmen , die einfachste - aber vielleicht nicht die effizienteste für sehr lange Listen - ist der Bubble- Sort-Algorithmus . Dieser Algorithmus vergleicht Elemente der Liste und Swaps Werte , bis die Liste sortiert ist. Anleitung
1
Deklarieren Sie eine Variable namens "temp" , die von der gleichen Art wie die Liste Sie sortieren ist . Zum Beispiel, wenn Sie Sortieren eines Arrays von ganzen Zahlen als " IntegerList " vom niedrigsten zum höchsten sind , deklarieren Sie die Variable Temp wie folgt:
int temp;
Später diese Variable wird vorübergehend halten Werte . für das Swap
2
Declare zwei Integer-Variablen - " . j" "i" und Diese greift auf Elemente in der Liste Array. Zum Beispiel, um Element j zuzugreifen, verwenden Sie die Syntax " IntegerList [j]. " Es ist aufgeräumter , diese Variablen neben der temp erklären wie folgt:
int temp, i , j;
3
Declare eine Integer-Variable namens " ListLength " und vergeben es die Anzahl der Elemente in der Liste. Zum Beispiel:
int ListLength = 30;
4
Construct den Rahmen für eine " for"-Schleife , mit der Variable i als Iterator in ihren Argumenten , Null für den Anfangswert , ListLength für den Endwert und einer Schrittweite von einem. A " for"-Schleife enthält Code, der wiederholt über die Anzahl der Schritte definiert durch ausgeführt Ruft die " for"-Schleifen " drei Argumente, die Startwert , Endwert und Schrittweite sind . Tun Sie dies wie folgt:
for (i = 0; i < ListLength ; i + +) {
Code geht hier
}
5
Nest ein weiteres " for"-Schleife in der Schleife zurück , diesmal über die Variable j als Iterator , i +1 für den Startwert , ListLength für den Endwert und einer Schrittweite von einem. Der Code sollte nun wie folgt aussehen :
int temp, i , j, ListLength = 30;
for (i = 0; i < ListLength ; i + +)
{
for (j = i +1; j < ListLength ; j + +) {
Code geht hier
}
}
Diese wird zuerst holen Element i aus dem Array wird sortiert und dann durch den Rest der Liste vergleichen Element zu Element j i und tauschen die Werte , wenn das Element i weniger als Element j ist .
Seite 6
Legen Sie eine "if" -Schleife zu testen, ob die j-te Element größer ist als der i-ten wie folgt:
int temp, i , j, ListLength = 30;
for (i = 0; i < ListLength ; i + +) {
for (j = i +1; j < ListLength ; j + +)
{
if ( IntegerList [i] > IntegerList [j]) {
Code geht hier
}
}
}
7
geben Sie den Code auf Elemente austauschen , wenn i und j IntegerList [i] ist größer als IntegerList [j ] wie folgt:
int temp, i , j, ListLength = 30;
for (i = 0; i < ListLength ; i + +) {
for (j = i +1; j < ListLength ; j + +) {
if ( IntegerList [i] > dass die Variable Temp erklärte früher wird jetzt als eine vorübergehende Inhaber der Elemente in der Liste verwendet .