RekenaarsProgrammering

Rekursie - wat is dit? Rekursie programmering (Voorbeelde)

Rekursie is interessant gebeure in hulself, maar hulle is in die programmering van besondere belang in sommige gevalle. Vir die eerste keer gekonfronteer met hulle, 'n redelike groot aantal mense het met hul begrip van die probleem. Dit is te danke aan 'n groot gebied van potensiële gebruik van die term, afhangende van die konteks waarin die "rekursie" gebruik word. Maar daar word gehoop dat hierdie artikel sal jou help om moontlike misverstande en verwarring te voorkom.

Wat is die "rekursie" in die algemeen?

Die woord "rekursie" het 'n verskeidenheid van waardes wat afhanklik is van die streek waarin dit toegepas word. Universal aanwysing is soos volg: rekursie - hierdie definisie beelde, beskrywings van voorwerpe of prosesse in die voorwerpe self. hulle is slegs moontlik in gevalle waar die voorwerp is 'n deel van homself. Op sy eie manier dit definieer rekursiewe wiskunde, fisika, ontwikkeling, en 'n aantal ander wetenskaplike dissiplines. Die praktiese toepassing word gevind in die inligtingstelsels en fisiese eksperimente.

Wat word bedoel met rekursie in programmering?

Rekursiewe situasies of rekursie in programmering, bekend as die oomblikke wanneer die prosedure of program funksie self noem. So vreemd vir diegene wat begin het om ontwikkeling te leer, as dit mag klink, daar is niks vreemds nie. Hou in gedagte dat die rekursie - dit is nie moeilik nie, en in sommige gevalle hulle vervang siklusse. As jou rekenaar korrek ingestel noem 'n prosedure of funksie, hy begin net om haar te dra.

Rekursie kan beperkte of onbepaalde wees. Eers gestop self oorsaak, dit moet ook voorwaardes van beëindiging wees. Hierdie afname in waarde kan wisselvallig wees, en wanneer dit 'n sekere waarde bereik, en stop die oproep voltooiing sagteware / oorgang na die daaropvolgende kode, afhangende van die behoeftes van sekere doelwitte te bereik. Deur oneindige rekursie impliseer dat dit sal genoem word, sal so lank as wat 'n rekenaar of 'n program waarin hy bedrywig werk.

Dit is ook moontlik die organisasie moeilik rekursie met behulp van twee funksies. Gestel daar is A en B. A het 'n funksie in jou kode oproep na B en B, op sy beurt, dui op die behoefte aan 'n rekenaar 'n komplekse A. rekursie te voer - 'n manier om uit 'n komplekse reeks van logiese situasies vir rekenaar logika.

As die leser van hierdie lyne bestudeer ontwikkeling siklusse, dit is waarskynlik reeds die ooreenkomste tussen hulle en rekursie opgemerk. In die algemeen, kan hulle eintlik voer soortgelyk of identies take. Met die hulp van rekursie is gerieflik om simulasie werk siklus doen. Dit is veral nuttig waar die siklusse hulself om te gebruik is nie baie gerieflik. Ry implementering sagteware is nie baie verskillend in verskillende hoë-vlak programmeertale. Nog rekursie in die "Pascal" en rekursie in C of 'n ander taal het sy eie kenmerke. Sy kan suksesvol in 'n lae-vlak tale geïmplementeer soos "assembler", maar dit is meer problematies en tydrowend.

bome rekursie

Wat is 'n "boom" in die ontwikkeling? Dit is 'n eindige versameling bestaande uit ten minste een knoop wat:

  1. Het 'n aanvanklike spesiale node, bekend as die wortel van die hele boom.
  2. Die oorblywende nodes is in 'n bedrag wat verskil van nul, disjunkte deelversamelings, op dieselfde tyd wat hulle is ook 'n boom. Alle sodanige vorme van organisasie genaamd die subtrees van die belangrikste boom.

Met ander woorde: bome bevat subtrees wat meer bome bevat, maar in kleiner getalle as die vorige boom. Dit hou aan totdat een van die nodusse moontlik sal wees om aan te beweeg, en dit sal die einde van die rekursie beteken. Daar is nog 'n nuanse oor diagram: gewone bome groei van onder na bo, en hulle getrek tot programmering omgekeerd. Webwerwe wat geen voortsetting het, genoem einde nodes. Vir gerief van notasie, en vir die gemak van gebruik genealogiese terminologie (voorvaders, kinders).

Waarom dit gebruik word in programmering?

Sy gebruik van rekursie in programmering gevind op 'n verskeidenheid van komplekse take. As jy wil net een oproep maak, hoe makliker is die gebruik van die integrasie siklus, maar wanneer twee of meer herhalings te vermy chaining en maak die implementering daarvan in die vorm van 'n boom, en rekursiewe situasies toe te pas. Vir 'n wye klas van probleme die organisasie van die berekening proses op hierdie manier is die beste in terme van verbruik van hulpbronne. So, die rekursie in "Pascal" of enige ander hoë-vlak programmeertaal is 'n funksie of prosedure oproep aan die voorwaardes ongeag die aantal eksterne oproepe. Met ander woorde, kan die program net een oproep na die subroutine wees, maar dit sal tot 'n sekere voorafbepaalde wringkrag. In sommige opsigte is dit 'n analoog lus met die gebruik daarvan eienskappe.

Verskille rekursie in verskeie programmeertale

Ten spyte van die algemene diagram van 'n implementering en die betrokke aansoek in elke individuele geval, rekursie in programmering het sy eie kenmerke. Dit kan lei tot probleme in die soeke na die vereiste materiaal. Maar altyd in gedagte hou: as die programmeertaal is 'n funksie of prosedure, dus, die oproep rekursie - dit is haalbaar. Maar sy belangrikste verskille voorkom wanneer die gebruik van lae en hoë programmeertale. Dit is veral waar moontlikhede van implementering program. Uitvoering sal uiteindelik afhang of die taak gestel, in ooreenstemming met dit en geskrewe rekursie. Funksies en prosedures wat gebruik word is anders, maar hul doel is altyd dieselfde - maak die noem hulself.

Rekursie - dit is maklik. So maklik om die inhoud van die artikel onthou?

Vir beginners om te verstaan dit kan moeilik wees op die eerste, so jy moet voorbeelde van rekursie, of ten minste een. Daarom, moet jy 'n klein voorbeeld van die alledaagse lewe, wat sal help om die essensie van hierdie meganisme verstaan om die doelwitte in die ontwikkeling te bereik gee. Neem twee of meer spieëls, plaas dit so dat in 'n enkele vertoning al die res. Dit kan gesien word dat die spieëls reflekteer self herhaaldelik, skep die effek van die oneindigheid. Hier rekursie - is, figuurlik gesproke, die refleksies (wat is 'n baie). Soos jy kan sien, maklik om te verstaan, sou dit wil. 'N Studie van programme materiale, dan kan ons dit rekursie sien - dit is ook baie maklik uitvoerbaar taak.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 af.birmiss.com. Theme powered by WordPress.