Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Computer Programming Languages >> Content
Hoe te Recursion Solve
Recursie is een krachtig concept op het gebied van de informatica , maar het kan moeilijk zijn voor nieuwelingen te begrijpen . Recursie is een functie of methode herhaaldelijk roepen zich in een andere context tot een "basis " context wordt bereikt en geretourneerd . Met andere woorden , een probleem , het programma recontexualizes als een enigszins ander probleem . Bij de uitvoering van een recursieve algoritme , altijd rekening met de meest eenvoudige vorm van het probleem en stellen dit vereenvoudigde voorbeeld als een ' base case , " welke versies van het probleem alle andere zullen verwijzen . Instructies
1

Definieer header van de functie - naam van de functie en de inputs . Bijvoorbeeld, zou een functie die een bepaald Fibonacci getal komt er als volgt uit :

fib
( int n ) { }

Hier , de functie berekent de " n " Fibonacci getal in de rij . kopen van 2

Noteer hoe de functie wordt generiek worden genoemd . Bijvoorbeeld , wanneer je fib ( ) bellen , zult u een integer gebruiken als argument en noteer het getal dat het berekent :

int result = fib ( x ) ;
3

Definieer de " base case" van uw recursie probleem . Er kunnen meerdere basisstations gevallen . Zoals de Fibonacci-reeks vereist twee nummers , zult u twee base gevallen nodig om zijn oplossing te implementeren

if ( n == 0 ) return 0 ; . If ( n == 1 ) return 1 ;
< br > 4

Definieer de recursieve stap van uw recursie probleem als een kleinere , eenvoudigere versie van hetzelfde probleem , dat verwijst naar de aanroeping voorbeeld uit stap 2 . In ons voorbeeld , de Fibonacci-reeks is een wiskundige reeks waarbij elk nummer in de lijn is de som van de twee voorgaande getallen in de reeks. Het algoritme om een ​​bepaalde Fibonacci getal vinden moet dus beroepen zich twee keer , een keer voor het vorige nummer en eenmaal voor het nummer voor het vorige nummer :

int
result1 = fib ( n - 1 ) ; int resultaat2 = fib ( n - 2 ) ;

terugkeer resultaat1 + resultaat2 ;
5

Zet de functie samen , bijvoorbeeld :

fib
( int n ) { if ( n == 0 ) return 0 ; //base case 1else if ( n == 1 ) return 1 ; //base case 2

else { //recursieve stepint result1 = fib ( n - 1 ) ; int resultaat2 = fib ( n - 2 ) ;

terugkeer resultaat1 + resultaat2 ; } }



de structuur van de " base case " en " recursieve stap " zal hetzelfde zijn voor alle recursieve functies , hoewel er meerdere base gevallen en lange recursieve stappen kunnen zijn .

Previous: Next:
  Computer Programming Languages
·Application Prototype Developm…
·WSH Object Methoden 
·Syntax Error : Bad Array decla…
·Hoe kan ik gebruiken Enterpris…
·Hoe je je eigen toetsenbord Ka…
·Hoe kan ik de gegevens in ADT …
·Hoe te Exec gebruiken in Bash …
·Hoe maak je Combineer een lijs…
·Hoe maak je Center een Drop -D…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Java Classpath Tutorial 
·Hoe maak je een VBA Einde Verklaring Set…
·Hoe RSS maken met PHP 
·Hoe maak je dubbele bestanden in Java Ve…
·Hoe te Komma's in PHP Verwijder 
·Hoe kan ik Flash -bestanden bewerken Met…
·Hoe stel ik een e-mail bijlage met een C…
·Hoe kan ik een ActiveX-besturingselement…
·Hoe link naar de GUI interface in Java m…
Copyright © Computer Kennis http://www.nldit.com