Recursion er en af de mest magtfulde idéer i hele datalogi. Ofte omtalt som en " del-og -hersk "-tilgang til at løse problemer , rekursion tillader dig at løse et problem ved at løse en eller flere " mindre" udgaver af det samme problem, og derefter gøre en lille mængde af yderligere eller kombinere arbejde . På denne måde kan mange meget komplekse problemer løses med utrolig elegante algoritmer . Ting du skal
Microsoft Visual Basic
Vis Flere Instruktioner
1
Opret en ny Visual Basic -funktion. For eksempel: .
Function gcd ( ByVal x As Integer , ByVal y As Integer ) Som IntegerEnd Function
Denne funktion beregne den største fælles divisor af to tal
2
Tilføj en test mellem Funktion og End Function linjer at skelne mellem de "base case" og " rekursive sagen. " Base sager er meget vigtige i rekursive funktioner - uden én, vil din kode normalt medføre en uendelig løkke og sandsynligvis crash din program. For eksempel ser basen tilfældet for " gcd " funktion som denne : Hej p Hvis y = 0 Then 'Dette vil være base caseElse ' Dette vil være den rekursive caseEnd Hvis
< br > 3
Tilføj en base case . Dette er den værdi , at din funktion returnerer når det støder på et problem, så lille, at det ikke kan bryde det ned yderligere. For " gcd "-funktionen , ser det sådan ud : Hej
Return x
4
Tilføj en rekursiv sag. Når din funktion igen, den påberåber sig med en enklere problem, der vil hjælpe det løse større problem. I tilfælde af " gcd " funktion , er den simplere problem, vælges således, at dens resultat er faktisk resultatet for hele komplekst problem. Det ser sådan her : Hej
Return gcd (y , x Mod y)
5
Test din funktion. Det er altid vigtigt at teste rekursive funktioner ved hjælp af base case og nogle rekursive tilfælde som input. Prøv at tænke på tests , der kan være uden for normen , såsom negative tal.