Ռակետի պոչը ռեկուրսիա է:

Բովանդակություն:

Ռակետի պոչը ռեկուրսիա է:
Ռակետի պոչը ռեկուրսիա է:

Video: Ռակետի պոչը ռեկուրսիա է:

Video: Ռակետի պոչը ռեկուրսիա է:
Video: Frankly it's Grass? New Crochet Knitting Podcast 140 2024, Նոյեմբեր
Anonim

Tail-call optimization Tail recursion-ն ունի հատուկ կարգավիճակ Racket-ում, քանի որ կոմպիլյատորը նկատում է պոչի կանչերը և օպտիմալացնում դրանք: Սովորաբար, ֆունկցիայի յուրաքանչյուր զանգ, ներառյալ ռեկուրսիվ կանչը, հանգեցնում է արգումենտների մեկ այլ հավաքածուի պահպանմանը հիշողության բլոկում, որը կոչվում է զանգերի կույտ::

Պոչը ռեկուրսիա է?

Ի՞նչ է պոչի ռեկուրսիան: Ռեկուրսիվ ֆունկցիան-ը պոչի ռեկուրսիվ է, երբ ռեկուրսիվ կանչը վերջին բանն է, որն իրականացվում է ֆունկցիայի կողմից: Օրինակ, հետևյալ C++ ֆունկցիայի տպագրությունը tail recursive է:

Ocaml tail-ը ռեկուրսի՞վ է:

OCaml Tail recursion

Ֆունկցիոնալ լեզուները, ինչպիսին է OCaml-ը, մեծապես ապավինում են ռեկուրսիվ ֆունկցիաներին Այնուամենայնիվ, նման գործառույթները կարող են հանգեցնել հիշողության սպառման կամ մեծ տվյալների հավաքածուների հետ աշխատելիս, կուտակել հեղեղումները. Պոչի ռեկուրսիան նման դեպքերում օպտիմալացման կարևոր աղբյուր է:

Արդյո՞ք պոչը ռեկուրսիվ կրկնվող է:

Պոչի ռեկուրսիվ մեթոդը մեկ եղանակ է՝ նշելու կրկնվող գործընթաց: Կրկնումը այնքան տարածված է, որ ծրագրավորման լեզուների մեծամասնությունը տրամադրում է հատուկ կոնստրուկցիաներ դրա ճշգրտման համար, որոնք հայտնի են որպես հանգույցներ:

Կարագ տեսակավորման պոչը ռեկուրսի՞վ է:

ա. TAIL- RECURSIVE-QUICKSORT-ն անում է ճիշտ այն, ինչ անում է QUICKSORT; հետևաբար այն ճիշտ է դասավորվում: QUICKSORT-ը և TAIL-RECURSIVE-QUICKSORT-ը կատարում են նույն բաժանումը, այնուհետև յուրաքանչյուրն իրեն կանչում է A, p, q − 1 արգումենտներով: QUICKSORT-ն այնուհետև նորից կանչում է իրեն՝ A, q + 1, r արգումենտներով::

Խորհուրդ ենք տալիս: