Поиск:

Ответ в темуСоздание новой темы Создание опроса
> построить дерево оптимального поиска, динамическое программирование 
:(
    Опции темы
марина
Дата 21.4.2007, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 97
Регистрация: 2.8.2006

Репутация: нет
Всего: нет



нужны ссылки, не могу найти понятное обьяснение алгоритма, как построить дерево оптимального поиска с помощью динамического программирования...
или код на java или c++ с комментариями, по которому можно понять что в нем происходит

не понятно следующее почему именно так взаимодейтвуют друг с другом таблицы T и P
И как из них находить уже это оптимальное дерево, или его вообще надо находить во время построения этих таблиц

static int[] p = { 3, 10, 5, 15, 5, 9, 20, 10, 5, 18 };
static int n = p.length;
static int[][] T = new int[n][];
static int[][] P = new int[n][];

public static int optimum() {
    for (int i = 0; i < n; ++i) {
        T[i] = new int[n]; T[i][i] = p[i];
        P[i] = new int[n]; P[i][i] = p[i];
    }
    for (int d = 1; d < n; ++d) {       // по диагоналям
        for (int i = 0; i < n-d; ++i) { // по элементам диагонали
            P[i][i+d] = p[i] + P[i+1][i+d];
            T[i][i+d] = Math.min(T[i][i+d-1], T[i+1][i+d]);
            for (int j = i; j < i+d-1; ++j) { // выбор минимума
                int s = T[i][j] + T[j+2][i+d];
                if (s < T[i][i+d]) T[i][i+d] = s;
            }
            T[i][i+d] += P[i][i+d];
        }
    }
    return T[0][n-1];
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0347 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.