Mga computerProgramming

Recursion - ano ito? Recursion programming (Halimbawa)

Recursion ay kagiliw-giliw na mga kaganapan sa kanilang sarili, ngunit ang mga ito ay sa programming partikular na kahalagahan sa ilang mga kaso. Para sa unang pagkakataon confronted sa mga ito, ang isang medyo malaking bilang ng mga tao ay may sa kanilang pang-unawa ng problema. Ito ay dahil sa isang malaking field ng mga potensyal na paggamit ng term, depende sa konteksto kung saan ang "recursion" ay ginagamit. Ngunit ito ay umaasa na ang artikulong ito ay makakatulong upang maiwasan ang posibleng misunderstandings at pagkalito.

Ano ang "recursion" sa pangkalahatan?

Ang salitang "recursion" ay may isang hanay ng mga halaga na depende sa rehiyon kung saan ito ay inilapat. Universal pagtatalaga ay ang mga sumusunod: recursion - ito definition mga imahe, mga paglalarawan ng mga bagay o proseso sa mga bagay sa kanilang sarili. ang mga ito ay lamang na posible sa mga kaso kung saan ang object ay isang bahagi ng kanyang sarili. Sa kanyang sariling paraan nito tumutukoy recursive matematika, pisika, programming, at isang bilang ng iba pang mga pang-agham disciplines. Ang mga praktikal na aplikasyon ay na natagpuan sa mga sistema ng impormasyon at pisikal na mga eksperimento.

Ano ang kahulugan ng recursion sa programming?

Recursive mga sitwasyon o recursion sa programming, na tinatawag na ang mga sandali kapag ang procedure o programa function na tawag mismo. Bilang kakaiba para sa mga taong Sinimulan na upang matuto programming, tulad ng ito ay maaaring tunog, walang anuman kakaiba tungkol dito. Isaisip na ang recursion - ito ay hindi mahirap, at sa ilang mga kaso palitan ang mga ito cycles. Kung ang iyong computer naitakda nang tama tumawag sa isang pamamaraan o function, siya lamang ay nagsisimula upang isagawa kanya.

Recursion ay maaaring maging may hangganan o walang hanggan. Munang tumigil mismo dahilan, ito ay dapat ding maging mga kondisyon ng pagwawakas. Ito pagbawas sa ang halaga ay maaaring maging variable, at kapag ito ay umabot sa isang tiyak na halaga, at itigil ang pagkumpleto ng tawag software / paglipat sa kasunod na code, depende sa mga pangangailangan upang makamit ang ilang mga layunin. Sa pamamagitan ng walang-katapusang recursion nagpapahiwatig na ito ay tinatawag na, ay gagana hangga't ang isang computer o isang programa kung saan ito ay nagpapatakbo.

Posible rin ang samahan mahirap recursion paggamit ng dalawang function. Ipalagay na may mga A at B. A ay may isang function sa iyong code na tawag sa B, at B, siya namang, ay nagbubunga ng pangangailangan para sa isang computer upang magsagawa ng kumplikadong A. recursion - isang paraan sa labas ng isang komplikadong serye ng mga lohikal na mga sitwasyon para sa computer logic.

Kung ang mambabasa ng mga linyang aral cycles programming, ito ay marahil napansin na ang pagkakatulad sa pagitan ng mga ito at recursion. Sa pangkalahatan, maaari silang aktwal na gumanap magkapareho o magkatulad na mga gawain. Sa tulong ng recursion ay maginhawa na gawin kunwa trabaho cycle. Ito ay partikular na kapaki-pakinabang na kung saan ang mga cycles sa kanilang sarili na gamitin ay hindi masyadong maginhawa. Pagmamaneho software pagpapatupad ay hindi masyadong iba't-ibang sa iba't ibang mga high-level programming wika. Ngunit recursion sa "Pascal" at recursion sa C o sa ibang wika ay may sariling mga katangian. Siya ay maaaring maging matagumpay na ipinatupad sa mababang antas na mga wika tulad ng "assembler", ngunit ito ay mas may problemang at oras gugulin.

puno recursion

Ano ang "puno" sa programming? Ito ay isang tiyak na hanay na binubuo ng hindi bababa sa isang node na ay:

  1. Ay may isang paunang espesyal na node, na tinatawag na ang ugat ng buong puno.
  2. Ang natitirang mga nodes ay sa isang halaga na ay naiiba mula sa zero, magkahiwalay subset, sa parehong oras ang mga ito ay din ng isang puno. Ang lahat ng naturang mga anyo ng organisasyon na tinatawag na subtrees sa mga pangunahing tree.

Sa ibang salita: puno maglaman subtrees na naglalaman ng higit pang mga puno, ngunit sa mas maliit na mga numero kaysa sa nakaraang tree. Ito ay nagpatuloy hanggang isa sa mga nodes ay magiging posible upang ilipat sa, at ito ay nangangahulugan na ang katapusan ng recursion. May isa pang pananarinari tungkol balangkas: ordinaryong puno lumago mula sa ibaba pataas, at sila ay inilabas sa programming vice versa. Mga site na walang pagpapatuloy, na tinatawag na end nodes. Para sa kaginhawahan ng pagtatanda, at para sa kadalian ng paggamit genealogical terminolohiya (ninuno, mga anak).

Bakit ito ay ginagamit sa programming?

Ang kanyang paggamit ng recursion sa programming natagpuan sa isang hanay ng mga kumplikadong mga gawain. Kung nais mong gumawa lamang ng isang tawag, ang mas madali ay ang paggamit ng ikot ng integration, ngunit kapag ang dalawa o higit pang mga repetitions upang maiwasan ang chaining at magsisigawa ng kanilang pagpapatupad sa anyo ng isang puno, at recursive sitwasyon apply. Para sa isang malawak na klase ng mga problema ang mga samahan ng computing proseso sa paraang ito ay ang pinakamahusay sa mga tuntunin ng mga mapagkukunan consumption. Kaya, ang recursion in "Pascal" o anumang iba pang mga wika mataas na antas ng programming ay isang function o pamamaraan na tawag sa kundisyon hindi alintana ang bilang ng mga panlabas na mga tawag. Sa ibang salita, ang programa ay maaaring maging lamang ng isang tawag sa subroutine, ngunit ito ay hanggang sa isang tiyak predetermined metalikang kuwintas. Sa ilang mga paraan ito ay isang analog loop sa kanyang paggamit katangian.

Pagkakaiba recursion sa iba't-ibang mga wika programming

Sa kabila ng pangkalahatang diagram ng isang pagpapatupad at ang partikular na application sa bawat indibidwal na kaso, recursion sa programming ay may sariling mga katangian. Ito ay maaaring humantong sa mga problema sa paghahanap para sa mga kinakailangang materyal. Ngunit laging tandaan: kung ang programming language ay isang function o pamamaraan, samakatuwid, ang tawag recursion - ito ay magagawa. Subalit ang kanyang pinaka makabuluhang pagkakaiba mangyari kapag gumagamit ng mababa at mataas na mga wika programming. Ito ay lalong totoo posibilidad ng programang pagpapatupad. Pagpapatupad sa huli ay depende sa kung ang gawain ay naka-set, alinsunod sa mga ito at isinulat recursion. Pag-andar at pamamaraan na ginamit ay naiiba, ngunit ang kanilang layunin ay palaging ang parehong - gumawa ng mga tawag sa kanilang sarili.

Recursion - ito ay madali. Bilang madaling tandaan ang mga nilalaman ng artikulo?

Para sa mga nagsisimula upang maunawaan maaari itong maging mahirap sa una, kaya kailangan mong halimbawa ng recursion, o hindi bababa sa isa. Samakatuwid, dapat kang magbigay ng isang maliit na halimbawa ng mga araw-araw na buhay, na kung saan ay makakatulong upang maunawaan ang kakanyahan ng mekanismong ito upang makamit ang mga layunin sa programming. Dalhin ang dalawa o higit pang mga salamin, ilagay ang mga ito nang sa gayon ay sa isang solong display ang lahat ng pahinga. Maaari itong makita na ang mga salamin na sumasalamin mismo nang paulit-ulit, na lumilikha ng epekto ng kawalang-hanggan. Narito recursion - ay, pasimbolo pagsasalita, ang reflection (na kung saan ay isang pulutong). Tulad ng iyong nakikita, madaling maunawaan, magiging nais. Ang isang pag-aaral ng programming materyales, at pagkatapos ay maaari naming makita na ang recursion - ito ay din tunay madaling maaaring gawin na gawain.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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