KomputilojProgramado

Rikuro - kio estas tio? Rikuro programado (Ekzemploj)

Rikuro estas interesaj okazaĵoj en si mem, sed ili estas en programado aparta graveco en iuj kazoj. Unuafoje alfrontita kun ili, sufiĉe granda nombro da homoj havas kun iliaj komprenon de la problemo. Ĉi tio estas pro grandega kampo potenciala uzo de la termino, depende de la kunteksto en kiu la "rekursio" estas uzata. Sed ĝi atendas ke ĉi tiu artikolo helpos eviti eblajn miskomprenojn kaj konfuzo.

Kio estas la "rekursio" ĝenerale?

La vorto "rekursio" havas gamon de valoroj kiuj dependas de la regiono en kiu ĝi estas aplikita. Universala designación estas la jena: rekursio - ĉi difino bildoj, priskriboj de objektoj aŭ procezoj en la objektoj mem. ili povas nur en kazoj kie la objekto estas parto de li mem. En ĝia propra maniero ĝi difinas rekursia matematiko, fiziko, programado, kaj kelkaj aliaj sciencaj disciplinoj. La praktika apliko troviĝas en la sistemoj de informo kaj fizikaj eksperimentoj.

Kio estas signifita de rekursio en programado?

Rekursia situacioj aŭ rekursio en programado, nomita la momentoj kiam la procedo aŭ programo funkcion nomas sin. Kiel strangaj por tiuj, kiuj komencis lerni programadon, kiel tio povas soni, estas nenio stranga pri tio. Memoru ke la rekursio - ne estas malfacile, kaj en iuj kazoj anstataŭas cikloj. Se via komputilo ĝustaj voki proceduro aŭ funkcio, ĝi ĵus komencas porti ŝin.

Rikuro povas esti finia aŭ senfina. Por unua haltis mem kaŭzas, ĝi devus ankaŭ esti kondiĉojn de finaĵo. Tiu malkresko en valoro povas esti variablo, kaj kiam ĝi atingas certan valoron, kaj halti la alvoko kompletigo programaro / transiro al la postaj kodo, depende de la bezonoj por atingi iujn celojn. Per senfina rekursio implicas ke ĝi estos nomita, funkcios dum komputilo aŭ programo en kiu operacias.

Ĝi ankaŭ eblas la organizo malfacila rekursio uzante du funkcioj. Supozu ke estas A kaj B. A havas funkcion en via kodo alvoko al B, kaj B, siavice, montras al la neceso de komputilo plenumi kompleksa A. rekursio - eliron el kompleksa serio de logika situacioj por komputila logiko.

Se la leganto de ĉi tiuj linioj studis programadon cikloj, ĝi estas verŝajne jam rimarkis la similecon inter ili kaj rekursio. Ĝenerale, oni povas efektive fari similajn aŭ identajn taskojn. Kun la helpo de rekursio estas konvena fari simulado laboro ciklo. Tio ĉi estas precipe utila kie la cikloj sin uzi ne estas tre oportuna. Veturado programaro efektivigo ne estas tre malsamaj en malsamaj altnivela programlingvoj. Tamen rekursio en la "Pascal" kaj rekursio en C aŭ alia lingvo havas propran karakterizaĵoj. Ŝi povas esti sukcese efektivigita en malalta nivelo lingvojn kiel "assembler", sed ĝi estas pli problema kaj tempo konsumanta.

arboj rekursio

Kio estas "arbo" en la programado? Estas finia aro konsistanta de almenaŭ unu nodon kiu estas:

  1. Havas komencan speciala nodo, nomita la radiko de la tuta arbo.
  2. La ceteraj nodoj estas en kvanto kiu estas malsama de nulo, disa subaroj, samtempe ili estas ankaŭ arbo. Ĉiuj tiaj formoj de organizo nomita la subárboles de la ĉefa arbo.

Alivorte: arboj enhavas subárboles kiuj enhavas pli arboj, sed en pli malgrandaj nombroj ol la antaŭa arbo. Ĉi daŭrigas ĝis unu el la nodoj estos ebla por movi plu, kaj tio signifas la finon de la rekursio. Ekzistas unu pli nuancon pri diagramado: ordinaraj arboj kreskas de la fundo supren, kaj ili estas tiritaj en programming inverse. Lokoj kiuj ne havas daŭrigon, nomita fino nodoj. Por komforto de skribmaniero, kaj por facileco de uzo genealogia terminologio (prapatroj, infanoj).

Kial ĝi estas uzita en programado?

Lia uzo de rekursio en programado troviĝas sur gamo de kompleksaj taskoj. Se vi volas fari nur unu alvoko, pli facila estas la uzo de la integriĝo ciklo, sed kiam du aŭ pli ripetoj eviti ĉenante kaj fari siajn efektivigo en la formo de arbo, kaj rekursia situacioj aplikiĝas. Por larĝa klaso de problemoj la organizo komputi procezo tiamaniere estas la plej bona en terminoj de rimedoj konsumado. Tiel, la rekursio en "Pascal" aŭ iu alia altnivela programlingvo estas funkcio aŭ proceduro alvoko al la kondiĉoj sendepende de la nombro de eksteraj alvokoj. Alivorte, la programo povas esti nur unu alvoko al la subrutina, sed estos ĝis certa antaŭdeterminitaj paro. En iuj manieroj estas analoga buklo kun ĝia uzo karakterizaĵojn.

Diferencoj rekursio en diversaj programlingvoj

Malgraŭ la ĝenerala skemo de implementación kaj la aparta apliko en ĉiu individua kazo, rekursio en programado havas propran karakterizaĵoj. Tio povas konduki al malfacilaĵoj en la serĉado de la postulata materialo. Sed ĉiam memoru: se la programlingvo estas funkcio aŭ proceduro, do, la alvoko rekursio - ĝi estas factible. Sed lia plej signifaj diferencoj okazas kiam uzanta malalta kaj alta programlingvoj. Tio estas aparte vera ebloj de programo efektivigo. Ekzekuto finfine dependas de ĉu la tasko estas metita, laŭ ĝi kaj skribita rekursio. Funkcioj kaj proceduroj uzitaj estas malsamaj, sed ilia celo estas ĉiam la sama - fari la nomi ili mem.

Rikuro - estas facila. Kiel facile memori la enhavo de la artikolo?

Por komencantoj kompreni ĝin povas esti malfacile unue, do vi bezonas ekzemplojn de rekursio, aŭ almenaŭ unu. Tial, vi devus doni malgrandan ekzemplon de la ĉiutaga vivo, kio helpos kompreni la esencon de ĉi tiu mekanismo por atingi la celojn en la programado. Prenu du aŭ pli speguloj, metu ilin por ke en sola ekrano la tutan reston. Ĝi povas vidi ke la speguloj pripensi mem ripete, kreante la efekto de senfineco. Jen rekursio - estas, metafore la interkonsiliĝoj (kiu estas multe). Kiel vi povas vidi, facile komprenas, ke ĝi volas. Studo de programado materialoj, ni povas vidi ke rekursio - ĝi estas ankaŭ tre facile doable taskon.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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