Программирование > Теория, алгоритмы и стандарты
А вот еще про деревья нашлось
Макс:
если вас смущают торомоза при вставке, то можно форум разделить на 2 таблицы - в одной хранить дерево, во второй - данные.
Вставка в первую таблицу будет происходить быстро
Вообще данный алгоритм расчитан именно на форумы.
У меня в последнее время при работе с деревьями приходится делать такие операции
- вывод структуры дерева (в данном алгоритме это просто)
- получение дочерних узлов для указанного (по-моему в данном алгоритме это делать не удобно. Если я ничего не упустил - делается в 3 запроса)
- получение родительских узлов для указанного (вот как это сделать - я пока не вижу)
ЗЫ
кстати помнится был разговор о том что алгоритм Nested Set неудобен для форумов. Это было неудобно для класса, который я тут везде рекламировал (http://dev.e-taller.net/dbtree) потому как он может хранить лишь одно дерево в таблице и при большом форуме будет тормозить вставка.
Класс Pear:: DB :: NestedSet - позволяет хранить много деревьев в таблице, поєтому если создавать для каждого треда свое дерева, вставка сообщений заметно тормозить не должна.
Xander:
Мда, алгоритм-то я реализовал. А вот сделать так, чтобы ответы в ветке шли сверху вниз, по дате добавления не могу. Третий день мучаюсь.
Может кто-нибудь подскажет, как это сделать?
Макс:
Xander
а можно примерчик, в чем проблема ?
Xander:
Как только найду халявный хостинг с MySQL - так сразу выложу, и покажу в чем именно проблема...
Навигация
Перейти к полной версии