Kompyuta, Programu
Recursion - ni kitu gani? Recursion programu (Mifano)
Recursion ni ya kuvutia matukio katika wenyewe, lakini ni katika programu umuhimu fulani katika baadhi ya kesi. Kwa mara ya kwanza wanakabiliwa na wao, idadi kubwa ya haki watu kuwa na uelewa wao wa tatizo. Hii ni kutokana na uwanja mkubwa wa matumizi ya uwezo wa neno, kulingana na mazingira ambapo "kujirudia" limetumika. Lakini Inatarajiwa kuwa makala hii itasaidia kuepuka kutokuelewana iwezekanavyo na machafuko.
ni "kujirudia" kwa ujumla ni nini?
Maana ya kujirudia katika programu?
Recursion inaweza kuwa finite au usio na mwisho. Kwanza kusimamishwa yenyewe sababu, ni lazima pia kuwa na hali ya kufungwa. Upungufu huu kwa thamani inaweza kuwa kutofautiana, na wakati fika thamani fulani, na kuacha wito kukamilika programu / mpito kwa kanuni inayofuata, kulingana na mahitaji ya kufikia malengo fulani. By usio kujirudia ina maana kwamba itakuwa kuitwa, kazi kwa muda mrefu kama kompyuta au mpango inayotuzunguka.
Pia inawezekana shirika vigumu kujirudia kwa kutumia kazi mbili. Tuseme kuna watu A na B. A ina kazi katika kanuni wito wako na B, na B, kwa upande wake, inaelekeza katika mahitaji ya kompyuta kufanya tata A. kujirudia - njia nje ya mfululizo tata wa hali mantiki kwa mantiki ya kompyuta.
Kama msomaji wa mistari haya alisoma mzunguko programu, ni pengine tayari niliona yanayofanana kati yao na kujirudia. Kwa ujumla, wanaweza kweli kufanya kazi sawa au kufanana. Kwa msaada wa kujirudia ni rahisi kufanya simulation kazi ya mzunguko. Hii ni muhimu hasa ambapo mzunguko wenyewe kutumia ni si rahisi sana. Kuendesha utekelezaji wa programu ni si tofauti sana katika lugha mbalimbali ya programu za juu. Hata hivyo kujirudia katika "Pascal" na kujirudia katika C au lugha nyingine ina sifa yake mwenyewe. Yeye inaweza kuwa kwa mafanikio katika lugha ngazi ya chini kama vile "assembler", lakini ni zaidi ya matatizo na muda mwingi.
miti kujirudia
- Ina awali nodi maalum, inayoitwa mizizi ya mti mzima.
- nodes iliyobaki ni katika kiasi hicho ni tofauti na sifuri, subset disjoint, wakati huo huo wao pia ni miti. Aina zote hizo za shirika kuitwa subtrees ya mti kuu.
Yaani: miti vyenye subtrees ambayo yana miti zaidi, lakini kwa idadi ndogo kuliko mti uliopita. Hii inaendelea mpaka mmoja nodes itakuwa rahisi kuendelea, na itakuwa na maana ya mwisho wa kujirudia. Kuna moja nuance zaidi kuhusu diagramming: miti ya kawaida kukua kutoka chini kwenda juu, nao ni inayotolewa kwa programu kinyume chake. Maeneo ambayo hawana muendelezo, aitwaye mwisho nodi. Kwa urahisi wa nukuu, na kwa ajili ya urahisi wa kutumia kinasaba istilahi (mababu, watoto).
Kwa nini ni hutumiwa katika programu?
Tofauti kujirudia katika lugha mbalimbali ya programu
Pamoja mchoro wa jumla wa utekelezaji na maombi maalum katika kila kesi ya mtu binafsi, kujirudia katika programu ina sifa yake mwenyewe. Hii inaweza kusababisha matatizo katika kutafuta nyenzo zinazohitajika. Lakini mara zote kumbuka: kama lugha ya programu ni kazi au utaratibu, kwa hiyo, wito kujirudia - ni upembuzi yakinifu. Lakini tofauti yake muhimu zaidi kutokea wakati wa kutumia lugha za chini na juu ya programu. Hii ni uwezekano wa kweli hasa wa utekelezaji wa programu. Utekelezaji hatimaye hutegemea kama kazi ni kuweka, kwa mujibu wa hiyo na kuandikwa recursion. Kazi na taratibu zinazotumiwa ni tofauti, lakini lengo lao ni sawa daima - kufanya wito wao wenyewe.
Recursion - ni rahisi. Kama rahisi kukumbuka maudhui ya makala?
Similar articles
Trending Now