Автор Тема: алгоритм Nested Sets  (Прочитано 2761 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Varvara

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 16
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
алгоритм Nested Sets
« : 15 Января 2004, 16:14:14 »
Подскажите как добавить ветви (разделы) к существующим ветвям и дереву (каталог) используя древовидную структуру по алгоритму Nested Sets, прочла кучу информации по Nested Sets, но не нашла вразумительного ответа.

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
алгоритм Nested Sets
« Ответ #1 : 15 Января 2004, 16:26:46 »
При вставке нового елемента
1. у родителя меняется только поле right (увеличится на 2)
2. у нового елемента поле left равно старому значению поля right родителя
3. поле right нового елемента будет равно left нового елемента + 1
4.  у всех елементов у которых поле left больше чем значение поля right  родителя сделать left=left+2  и так же right=right+2
5. у нового елемента сделать level равным значению поля level родителя увеличенного на единицу.
Ветвь — набор елементов, сможешь вставить один елемент, сама дойдешь, как вставить ветвь :)

Все! кажется, я нигде не ошибся...
работа в Украине

Оффлайн Diesel

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 69
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
алгоритм Nested Sets
« Ответ #2 : 15 Января 2004, 16:41:06 »
Вот это может еще поможет: http://detail.phpclub.ru/article/db_tree

Оффлайн Varvara

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 16
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
алгоритм Nested Sets
« Ответ #3 : 15 Января 2004, 17:13:26 »
Большое спасибо, особенно Yukko !

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28