Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Рекуррентная зависимость.

Читайте также:
  1. Война за независимость. Образование США

Рекуррентная зависимость – зависимость, в которой любой элемент можно найти по любым k предыдущим элементам этой последовательности, где:

k- глубина (порядок) рекуррентны.

 

Общая формула для рекуррентной последовательности:

an = f (an-1, an-2 , …, an-k)

 

- Если заданы первые k элементов последовательности – решение одно

- Если задана только последовательность – решений бесконечное множество

 

 

Примерами рекуррентных последовательностей являются арифметическая (1) и геометрическая (2) прогрессии:

a1=1, a2=3, a3=5, a4=7, a5=9, … (1)

a1=1, a2=2, a3=4, a4=8, a5=16, … (2)

Рекуррентные формулы для указанных арифметической и геометрической прогрессий

ai = ai-1 +2

ai = 2*ai-1

Глубина рекурренты в обоих случаях равна единице. В целом рекуррентная последовательность описывается совокупностью начальных значений и рекуррентной формулой:

Для арифметической прогрессии:

Для геометрической прогрессии:

 

Вычисление любого n-го элемента рекуррентной последовательности сводится к циклическому процессу.

 

 

K=1

 

 

Особенности цикла при рекуррентной зависимости:

1) Результат, полученный на очередном шаге, является начальным для следующего шага.

2) Для получения n-го элемента последовательности не требуется n ячеек памяти. Для получения любого элемента последовательности потребуется k+1 ячеек памяти, где k – глубина рекурренты.

 

За счет этого идет выигрыш по времени и памяти.

 

 

Пример: найти 100-ый элемент последовательности Фибоначчи

an+1 = an-1 + an, где а0 и а1 = 1

 

 

 

Пример – рассчитать с помощью рекуррентной формулы гиперболический синус

 

Для этого построим итерационный цикл «Пока» и воспользуемся рекуррентной зависимостью

- такая рекуррентная зависимость позволит уменьшить время вычисления.

 

Считаем что Е – const, задает точность вычисления

Использование итерационного цикла иногда не даёт результат, например, если ряд не сходится.

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

 


Дата добавления: 2015-11-30; просмотров: 85 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.005 сек.)