|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.12.2010, 21:53 | #1 |
Пользователь
Регистрация: 28.10.2010
Сообщений: 26
|
Кэш. Функции.
Многократно вызываемая функция может запоминать результаты последнего вычисления и если то что требуется она уже делала - то не пересчитывать еще раз, а выдать из ранее посчитанного?
Это означает кэширование в программировании? Мне просто надо сделать задачу о числах Фибоначи через функцию с кэшированием. Можете привести пример таких функций? Как сделать числа Фибоначи рекурсивно я знаю, а вот с этим кэшированием не понимаю. Приведите, пожалуйста, примеры таких функций и, если можно с объяснением. СПАСИБО! |
25.12.2010, 21:59 | #2 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
Объяви массив, забей его нулями. При вызове функции подсчета i-го числа фибоначчи проверь:
если массив[i]=0 - посчитать число, записать его в массив[i]; иначе вернуть массив[i]. Это и будет кеширование |
25.12.2010, 23:36 | #3 |
Пользователь
Регистрация: 28.10.2010
Сообщений: 26
|
Кэш. Функции.
А объявлять массив в функции или в int main()?
|
25.12.2010, 23:51 | #4 |
Пользователь
Регистрация: 28.10.2010
Сообщений: 26
|
Я вроде написал, можете проверить или если что подкорректировать. СПАСИБО!
#include "stdafx.h" #include <iostream> using namespace std; int fib(int n) { int kash[80]; for (int i=1;i<=n;i++) { kash[i]=0; } if (kash[n]==0) { if (n==1 || n==2) { kash[n]=1; return n; } else kash[n]=fib(n-1)+fib(n-2); } return kash[n]; } int _tmain(int argc, _TCHAR* argv[]) { int n=58; cout <<fib(n)<<endl; return 0; } |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
написать кэш-функцию | andrey4623 | Общие вопросы Delphi | 6 | 01.04.2011 11:59 |
Сокет и кэш | Golovastik | Операционные системы общие вопросы | 1 | 13.07.2010 08:10 |
Кэш C# | IICuX123 | Фриланс | 11 | 21.07.2009 14:09 |
idhttp и кэш | Joe_Tribbiani | Работа с сетью в Delphi | 2 | 17.06.2009 09:32 |
Кэш драйвера ODBC | Henry | Общие вопросы C/C++ | 3 | 07.08.2008 05:48 |