Heim  >  Artikel  >  Backend-Entwicklung  >  Addiere 1 zu der durch das Array dargestellten Zahl (rekursive Methode)

Addiere 1 zu der durch das Array dargestellten Zahl (rekursive Methode)

王林
王林nach vorne
2023-08-28 17:17:061655Durchsuche

Addiere 1 zu der durch das Array dargestellten Zahl (rekursive Methode)

Angenommen, ein Array ist eine Sammlung von Zahlen, die durch nicht negative Zahlen dargestellt werden, addieren Sie die Zahl um 1 (erhöhen Sie die durch die Zahl dargestellte Zahl). Zahlen werden so gespeichert, dass die höchste Ziffer das erste Element des Arrays ist.

Um 1 zu der durch die Zahl

  • dargestellten Zahl zu addieren, beginnend am Ende des Arrays, bedeutet Addition, dass die letzte Zahl von 4 auf 5 gerundet wird.

  • Wenn das letzte Element 9 ist, ändern Sie es in 0 und tragen Sie = 1.

  • Überprüfen Sie für die nächste Iteration den Übertrag und wenn er 10 ergibt, machen Sie dasselbe wie in Schritt 2.

  • Nachdem Sie den Übertrag hinzugefügt haben, setzen Sie den Übertrag für die nächste Iteration auf 0.

  • Wenn Vektoren hinzugefügt werden und die Vektorgröße erhöht wird, hängen Sie am Anfang 1 an.

Angenommen, ein Array enthält die Elemente [7, 6, 3, 4], dann stellt das Array die Dezimalzahl 1234 dar, sodass die Addition von 1 zu dieser Zahl 7635 ergibt. Das neue Array wird also [7, 6, 3, 5] sein.

Beispiel

Input: [7, 6, 9, 9]
Output: [7, 7, 0, 0]
Input: [4, 1, 7, 8, 9]
Output: [4, 1, 7, 9, 0]

Erläuterung Addiere 1 zum letzten Element des Arrays, wenn es kleiner als 9 ist. Wenn das Element 9 ist, ändern Sie es in 0 und führen Sie eine Rekursion für die verbleibenden Elemente des Arrays durch.

Beispiel

Erklärung Wenn das letzte Element des Arrays kleiner als 9 ist, addieren Sie 1 dazu. Wenn das Element 9 ist, ändern Sie es in 0 und führen Sie eine rekursive Operation für die verbleibenden Elemente des Arrays durch.

Beispiel

#include <iostream>
using namespace std;
void sum(int arr[], int n) {
   int i = n;
   if(arr[i] < 9) {
      arr[i] = arr[i] + 1;
      return;
   }
   arr[i] = 0;
   i--;
   sum(arr, i);
   if(arr[0] > 0) {
      cout << arr[0] << ", ";
   }
   for(int i = 1; i <= n; i++) {
      cout << arr[i];
      if(i < n) {
         cout << ", ";
      }
   }
}
int main() {
   int n = 4;
   int arr[] = {4, 1, 7, 8, 9};
   sum(arr, n);
   return 0;
}

Das obige ist der detaillierte Inhalt vonAddiere 1 zu der durch das Array dargestellten Zahl (rekursive Methode). 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