single
Challenge: Het Opmaken van een Telefoonnummer
Veeg om het menu te tonen
Onthoud dat een recursieve functie een probleem oplost door zichzelf aan te roepen met een eenvoudigere invoer, totdat het de basisgeval bereikt dat de recursie stopt:
1234def list_sum(numbers): if not numbers: # Base case return 0 return numbers[0] + list_sum(numbers[1:]) # Recursive case
Let op hoe elke recursieve aanroep werkt op een kleinere versie van de invoer — in dit geval de lijst zonder het eerste element. Dezelfde aanpak geldt bij het verwerken van strings teken voor teken.
Veeg om te beginnen met coderen
Gegeven een string die een telefoonnummer voorstelt, welke spaties, streepjes, haakjes of andere niet-numerieke tekens kan bevatten. Het doel is om alleen de cijfers te extraheren met behulp van recursie.
- Als de invoerstring
numberleeg is, geef een lege string terug; - Controleer of het eerste teken van de string
numbereen cijfer is met de methodeisdigit(); - Als het een cijfer is, concateneer het met het resultaat van een recursieve aanroep waarbij de substring vanaf het tweede teken wordt doorgegeven;
- Als het geen cijfer is, doe een recursieve aanroep waarbij het eerste teken wordt overgeslagen.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.