Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Computer Programming Languages >> Content
Toepassingen voor een recursieve functie
Recursion kan een nuttige techniek voor programmeurs zijn. Recursieve functies , ook wel bekend als "methoden" in talen zoals Java , zijn functies die zichzelf noemen . Er zijn situaties waarin recursieve functies zijn bijzonder geschikt . Toch kan het moeilijk zijn om een recursieve functie correct uit te voeren , zodat ze moeten alleen waar nodig worden gebruikt . Recursieve functies zijn vaak nuttig bij het omgaan met data structuren en wiskundige activiteiten . Sorteren

Wanneer programma model gegevens , hetzij intern of van een bron zoals een database geïmporteerd , vaak moeten ze het uitzoeken . Sommige data structuren zijn niet besteld , wat betekent dat elementen zijn niet gerangschikt in een opeenvolgende orde . Bijvoorbeeld kan een programma een array met tekenreeksen erin bevatten . Aan de array , zodat de tekenreeksen zijn gerangschikt in oplopende volgorde alfabetisch te sorteren , kan het programma nodig om een algoritme te gebruiken . Merge sort is een voorbeeld van een iteratieve methode voor dit proces . Merge sort werkt door voortdurend het verdelen van de matrix in twee -, sorteer elke helft voordat het samenvoegen hen terug in een.
Searching

Wanneer programma's slaan gegevens in datastructuren , ze vaak moeten bepaalde elementen met behulp van het zoeken algoritmen , die kunnen profiteren van recursie lokaliseren . Bijvoorbeeld, als een array opslaat waarden in alfabetische volgorde , het programma kan recursie gebruiken om erachter te komen wat de positie van een bepaald element is op . Binary search houdt het programma continu controleren van een element halverwege de array . Als het element overeenkomt met het ene het programma zoekt , kan stoppen . Als het niet het betreffende element , kan het algoritme controleren of deze groter of kleiner dan het zoeken element . Als deze groter is , kan het algoritme de bovenste helft van de structuur na het huidige element elimineren , het zoeken moet in een in de onderste helft . Dit proces gaat door totdat het element zich bevindt .
Datastructuren

Bij de beslissing over algoritmen , moeten programmeurs vragen of een iteratieve functie die niet recursieve kon oplossen wordt de taak als een recursieve een . Bijvoorbeeld , in bepaalde datastructuren , een programma nodig doorzocht worden in lineair totdat het lokaliseert een zoekterm . In dit geval is er geen alternatief , maar om te schakelen door de structuur . Recursieve algoritmen vereenvoudigen de taak bij elke iteratie , controleren om te zien of het eindpunt is aangekomen , dan is het aanroepen van de functie opnieuw als het niet . Om de overeenkomsten tussen recursie en iteratie demonstreren , de volgende voorbeeld Java-methode toont een iteratieve methode overzicht : public void processNumber ( int myNum ) { if ( myNum > 100 ) return ; anders processNumber ( myNum * 5 ) ; }

Een alternatieve iteratieve implementatie hiervan zou zijn als volgt : . int Anum = 3 , terwijl ( Anum < 100 ) { Anum * = 5 ; }

In dit geval is de iteratieve versie is eenvoudiger
< br >
taken wiskundige

Sommige wiskundige bewerking taken zijn bijzonder goed geschikt voor recursieve functies . Fibonacci sequenties tonen recursieve verwerking . Elk nummer in een Fibonacci-reeks is de som van de twee voorgaande . Het volgende voorbeeld Java- code demonstreert een functie om een ​​Fibonacci getal te vinden : public int getFibonacci ( int fNum ) { if ( fNum < = 1 ) return fNum ; anders return getFibonacci ( fNum - 1 ) + getFibonacci ( fNum - 2 ) ; } < br >

de methode retourneert het getal in de Fibonacci-reeks op de positie aangegeven door een integer parameter als de code het noemt , als volgt : getFibonacci ( 8 ) ;

Dit zou het achtste nummer terug . ( Zie referenties 3 , 4 , 5 ) op Twitter

Previous: Next:
  Computer Programming Languages
·Hoe te SAS Training zoeken 
·Hoe maak ik een apostrof embed…
·Hoe te CLOB's converteren naar…
·Hoe maak je een VB6 DLL Server…
·Hoe maak je een negatieve bina…
·Hoe maak je een functie voor O…
·Hoe maak je een datum in TSQL 
·Wat is een Boolean type 
·Hoe maak je een bestand toevoe…
  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 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 maak je Voeg een tekstvak in Visual …
Hoe maak je een Picture Box in Visual Ba…
  Programmering Articles
·Hoe je toe Twee nummers met JavaScript 
·Hoe te converteren naar Hex Byte in VB6 
·Hoe te compileren C + + Met FStream 
·Hoe te Eclipse downloaden voor Android 
·Wat is de oorzaak JRun Servlet Error 500…
·Hoe kan ik een voettekst . PHP File vers…
·Het Belang van Java Programming op het g…
·Hoe te Twee Datum Columns Samenvoegen 
·Gebruik van Python Yield 
Copyright © Computer Kennis http://www.nldit.com