logo

Рекурсивни функции в дискретната математика

Рекурсивна функция е функция, чиято стойност във всяка точка може да бъде изчислена от стойностите на функцията в някои предишни точки. Например, да предположим, че функция f(k) = f(k-2) + f(k-3), която е дефинирана върху неотрицателно цяло число. Ако имаме стойността на функцията при k = 0 и k = 2, можем също да намерим нейната стойност при всяко друго неотрицателно цяло число. С други думи, можем да кажем, че рекурсивна функция се отнася до функция, която използва собствените си предишни точки, за да определи следващите термини и по този начин формира последователност от термини. В тази статия ще научим за рекурсивните функции заедно с някои примери.

Какво е рекурсия?

Рекурсията се отнася до процес, в който рекурсивен процес се повтаря. Рекурсивната е вид функция на една или повече променливи, обикновено определени от определен процес, който произвежда стойности на тази функция чрез непрекъснато прилагане на определена връзка с известни стойности на функцията.

Тук ще разберем рекурсията с помощта на пример.

Да предположим, че ще вземете стълба, за да стигнете до първия етаж от приземния етаж. Така че, за да направите това, трябва да предприемете една по една стъпка. Има само начин да отидете до второто стъпало, което е до напоеното първо стъпало. Да предположим, че искате да отидете на третата стъпка; първо трябва да направите втората стъпка. Тук можете ясно да видите процеса на повторение. Тук можете да видите, че с всяка следваща стъпка добавяте предишната стъпка като повтаряща се последователност със същата разлика между всяка стъпка. Това е действителната концепция зад рекурсивната функция.

Стъпка 2: Стъпка 1 + най-ниската стъпка.

Стъпка 3: Стъпка 2 + Стъпка 1 + най-ниската стъпка.

Стъпка 4: Стъпка 3 + стъпка 2 + стъпка 1 + най-ниската стъпка и т.н.

Набор от естествени числа е основният пример за рекурсивни функции, които започват от единица до безкрайност, 1,2,3,4,5,6,7,8, 9,…….инфинитив. Следователно наборът от естествени числа показва рекурсивна функция, защото можете да видите обща разлика между всеки член като 1; показва всеки път, когато следващият термин се повтаря от предишния термин.

Какво е рекурсивно дефинирана функция?

Рекурсивно дефинираните функции се състоят от две части. Първата част се занимава с дефиницията на най-малкия аргумент, а от друга страна, втората част се занимава с дефиницията на n-тия термин. Най-малкият аргумент се обозначава с f (0) или f (1), докато n-тият аргумент се обозначава с f (n).

Следвайте дадения пример.

Да предположим, че една последователност е 4,6,8,10

Изричната формула за горната последователност е f (n)= 2n + 2

Изричната формула за горната последователност е дадена от

f (0) = 2

вие сте снаждане

f(n) = f(n-1) + 2

Сега можем да получим членовете на последователността, прилагайки рекурсивната формула, както следва f(2 ) f (1) + 2

f(2) = 6

f (0) = 2

f(1) = f(0) + 2

f (1) = 2 + 2 = 4

f(2 ) = f (1) + 2

f(2) = 4 + 2 = 6

f(3 ) = f (2) + 2

f(3) = 6 + 2 = 8

С помощта на горната формула за рекурсивна функция можем да определим следващия член.

Какво прави функцията рекурсивна?

За да направите всяка функция рекурсивна, се нуждае от собствен термин за изчисляване на следващия член в последователността. Например, ако искате да изчислите n-тия член от дадената последователност, първо трябва да знаете предишния член и члена преди предишния член. Следователно, трябва да знаете предишния член, за да разберете дали последователността е рекурсивна или не рекурсивна. Така че можем да заключим, че ако функцията се нуждае от предишния член, за да определи следващия член в последователността, функцията се счита за рекурсивна функция.

java tostring

Формулата на рекурсивната функция

Ако1, а2, а3, а4, а5, а6, ……..ан,……е много набори или последователност, тогава рекурсивна формула ще трябва да изчисли всички термини, които са съществували преди, за да изчисли стойността на

ан= аn-1 +а1

Горната формула може също да се дефинира като рекурсивна формула на аритметична последователност. Можете ясно да видите в последователността, спомената по-горе, че това е аритметична последователност, която се състои от първия термин, последван от другите термини и обща разлика между всеки термин. Общата разлика се отнася до число, което добавяте или изваждате към тях.

Рекурсивна функция може също да се дефинира като геометрична последователност, където наборите от числа или последователност имат общ фактор или общо съотношение между тях. Формулата за геометричната последователност е дадена като

ан= аn-1 *r

Обикновено рекурсивната функция се дефинира в две части. Първият е изявлението на първия член заедно с формулата, а другият е изявлението на първия член заедно с правилото, свързано с последователните членове.

Как да напиша рекурсивна формула за аритметична последователност

За да напишете рекурсивната формула за формула на аритметична последователност, следвайте дадените стъпки

Етап 1:

В първата стъпка трябва да се уверите дали дадената последователност е аритметична или не (за целта трябва да добавите или извадите два последователни члена). Ако получите същия изход, тогава последователността се приема като аритметична последователност.

Стъпка 2:

Сега трябва да намерите общата разлика за дадената последователност.

Стъпка 3:

Формулирайте рекурсивната формула, като използвате първия термин и след това създайте формулата, като използвате предишния член и обща разлика; така ще получите дадения резултат

ан= аn-1 +д

сега разбираме дадената формула с помощта на пример

да предположим, че 3,5,7,9,11 е дадена последователност

В горния пример можете лесно да откриете, че това е аритметичната последователност, защото всеки член в последователността се увеличава с 2. Така че общата разлика между два члена е 2. Знаем формулата на рекурсивната последователност

ан= аn-1 +д

предвид,

d = 2

а1= 3

така,

а2= а(2-1)+ 2 = а1+2 = 3+2 = 5

а3= а(3-1)+ 2 = а2+2 = 5+2 = 7

низът съдържа java

а4= а(4-1)+ 2 = а3+2 = 7+2 = 9

а5= а(5-1)+ 2 = a + 2 = 9+2 = 11 и процесът продължава.

Как да напиша рекурсивна формула за геометрична последователност?

За да напишете рекурсивна формула за формула на геометрична последователност, следвайте дадените стъпки:

Етап 1

В първата стъпка трябва да се уверите дали дадената последователност е геометрична или не (за целта трябва да умножите или разделите всеки член на число). Ако получите еднакъв изход от един член към следващия член, последователността се приема като геометрична последователност.

Стъпка 2

Сега трябва да намерите общото съотношение за дадената последователност.

Стъпка 3

Формулирайте рекурсивната формула, като използвате първия член и след това създайте формулата, като използвате предишния член и общо съотношение; така ще получите дадения резултат

ан= r*аn-1

Сега разбираме дадената формула с помощта на пример

да предположим, че 2,8,32, 128,.е дадена последователност

В горния пример можете лесно да откриете, че това е геометричната последователност, тъй като последователният член в последователността се получава чрез умножаване на 4 на предишния член. И така, общото съотношение между два члена е 4. Знаем формулата на рекурсивната последователност

ан= r*аn-1

ан= 4

аn-1=?

предвид,

r = 4

а1= 2

така,

а2= а(2-1)* 4 = а1+ * 4 = 2* 4 = 8

arp - команда

а3= а(3-1)* 4 = а2* 4 = 8 * 4 = 32

а4= а(4-1)* 4 = а3* 4 = 32 * 4 = 128 и процесът продължава.

Пример за рекурсивна функция

Пример 1:

Определете рекурсивната формула за редицата 4,8,16,32,64, 128,….?

Решение:

Дадена е последователност 4,8,16,32,64,128,…..

Дадената последователност е геометрична, защото ако умножим предходния член, получаваме последователните членове.

За да определим рекурсивната формула за дадената последователност, трябва да я запишем в табличен вид

Термини Термин на последователността Функционално обозначение Долен индекс
1 4 е (1) а1
2 8 е (2) а2
3 16 е (3) а3
4 32 f(4) а4
5 64 е (5) а5
6 128 f(6) а6
н . f(n) ан

Следователно, рекурсивната формула в понятието функция е дадена от

f(1) = 4, f(n) . f(n- 1)

В долен индекс рекурсивната формула се дава от

а1= 4, ан= 2. аn-1