single
Challenge: Formatierung Einer Telefonnummer
Swipe um das Menü anzuzeigen
Erinnerung: Eine rekursive Funktion löst ein Problem, indem sie sich selbst mit einer einfacheren Eingabe aufruft, bis sie den Basisfall erreicht, der die Rekursion beendet:
1234def list_sum(numbers): if not numbers: # Base case return 0 return numbers[0] + list_sum(numbers[1:]) # Recursive case
Beachte, dass jeder rekursive Aufruf mit einer kleineren Version der Eingabe arbeitet – in diesem Fall die Liste ohne ihr erstes Element. Der gleiche Ansatz gilt beim Verarbeiten von Zeichenketten Zeichen für Zeichen.
Wischen, um mit dem Codieren zu beginnen
Gegeben ist eine Zeichenkette, die eine Telefonnummer darstellt und möglicherweise Leerzeichen, Bindestriche, Klammern oder andere nicht-numerische Zeichen enthält. Ziel ist es, ausschließlich die Ziffern mithilfe von Rekursion zu extrahieren.
- Falls die Eingabezeichenkette
numberleer ist, eine leere Zeichenkette zurückgeben; - Überprüfen, ob das erste Zeichen der Zeichenkette
numbereine Ziffer ist, indem die Methodeisdigit()verwendet wird; - Falls es sich um eine Ziffer handelt, diese mit dem Ergebnis eines rekursiven Aufrufs verketten, wobei die Teilzeichenkette ab dem zweiten Zeichen übergeben wird;
- Falls es keine Ziffer ist, einen rekursiven Aufruf durchführen, bei dem das erste Zeichen übersprungen wird.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen