Heim  >  Artikel  >  Backend-Entwicklung  >  C++-Programm zum Neuanordnen eines Arrays im Max-Min-Format

C++-Programm zum Neuanordnen eines Arrays im Max-Min-Format

王林
王林nach vorne
2023-08-28 14:29:06763Durchsuche

C++-Programm zum Neuanordnen eines Arrays im Max-Min-Format

Wir erhalten ein Array von ganzen Zahlen, die sortiert/unsortiert angeordnet werden können. Die Aufgabe besteht darin, zuerst das Array zu sortieren (falls die Werte nicht sortiert sind) und dann das Array so anzuordnen, dass das erste Element des Arrays der Maximalwert, das zweite Element der Minimalwert und das dritte Element ist Element ist das Array. Das zweite Maximum, das vierte wird das zweite Minimum sein und so weiter.

Sehen wir uns verschiedene Ein- und Ausgabeszenarien für diese Situation an –

input − int arr[] = {7, 5, 2, 3, 4, 9, 10, 5 }

output− Array vor dem Sortieren : 2 3 4 5 5 7 9 10 Ordnen Sie das Array in Max-Min-Form neu an als: 10 2 9 3 7 4 5 5

Erläuterung− Wir erhalten ein Array vom Typ Ganzzahl, das die Werte {7, 5, 2, 3, 4, 9, 10 enthält , 5 } . Zuerst sortieren wir ein Array, es wird {2 3 4 5 5 7 9 10} sein. Zweitens: Ordnen Sie das größte Element bei arr[0] (d. h. 10) an, ordnen Sie dann das kleinste Element bei arr[1] (d. h. 2) an, ordnen Sie dann das zweitgrößte Element bei arr[2] (d. h. 9) an und so weiter Analogie. Das endgültige Ergebnisarray wird 10 2 9 3 7 4 5 5 sein. 4, 6, 7 Ordnen Sie das Array in Max-Min-Form neu an als: 7, 1, 6, 2, 4

Erklärung− Wir erhalten ein Array vom Typ Integer, das die Werte {2, 4, 1, 6, 7} enthält. Zuerst sortieren wir ein Array, das Ergebnis ist {1,2,4,6,7}. Zweitens: Ordnen Sie das größte Element bei arr[0] an 7, dann das kleinste Element bei arr[1], das 1 ist, dann das zweitgrößte Element bei arr[2], das 6 ist, und so weiter. Das endgültige Array ist 7, 1, 6, 2, 4

Die im folgenden Programm verwendete Methode lautet wie folgt:

Geben Sie ein Array mit Elementen vom Typ Integer ein und berechnen Sie die Größe des Arrays. Rufen Sie die Sortiermethode der C++-STL auf, indem Sie arr[] und die Array-Größe als Argumente an die Funktion übergeben.

Drucken Sie das Array vor dem Anordnen aus und rufen Sie die Funktion Rearr_Max_Min(arr, size) auf

  • Innerhalb der Funktion Rearr_Max_Min(arr, size)

  • Deklarieren Sie eine Variable als max und setzen Sie sie auf size - 1, wird Setzen Sie eine andere Variable auf min und setzen Sie sie auf 0. Deklarieren Sie die Variable als max_val und setzen Sie sie auf arr[size - 1] + 1.

  • Beginnen Sie mit der FOR-Schleife von i nach 0, bis i kleiner als die Größe ist. Überprüfen Sie innerhalb der Schleife, ob IF i % 2 = 0 ist, setzen Sie dann arr[i] auf arr[i] + (arr[max] % max_val) * max_val und dekrementieren Sie den Maximalwert um 1.

    • Andernfalls setzen Sie arr[i] auf arr[i] + (arr[min] % max_val) * max_val und erhöhen Sie min um 1.

    • Beginnen Sie mit der FOR-Schleife von i nach 0, bis i kleiner als die Größe ist. Setzen Sie innerhalb der Schleife arr[i] auf arr[i] / max_val

Das obige ist der detaillierte Inhalt vonC++-Programm zum Neuanordnen eines Arrays im Max-Min-Format. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen

In Verbindung stehende Artikel

Mehr sehen