Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

"Обратное дерево" [D7, WinXP]


Страницы:   1 2 3 4

AdMeen ©   (2008-10-08 07:55:00) 

Каким образом можно реализовать "перевёрнутое дерево",т.е. дерево наоборот.где ветви сходятся к корню

*---
    |-----*
*---        |
             |---*
*---        |
    |-----*
*---

Примерно вот так.


MsGuns   (2008-10-09 12:41:00) [1]

>Честно я даже боюсь с вами поговорить об LR анализе. Если LL вы еще понимаете, то LR для вас >будет тяжелее.

:)))

Сажайте деревья на здоровье, пусть даже марсианские
И пребудет с Вами удача !


oxffff   (2008-10-09 09:28:00) [2]


> MsGuns ©   (09.10.08 09:12) [64]
> >Ну это не куст. А лес.
>
> Марсианский ?
> :)


Если смотреть слева направо, то лес. Если сверху вниз, то дерево.


oxffff   (2008-10-09 09:16:00) [3]


> MsGuns ©   (09.10.08 00:45) [58]
> А если серьезно по теме, то турнирную сетку можно, конечно
> изобразить и в виде TTreeView (какая разница, слева напрво
> рисовать этапы или справа налево), но есть много минусов:
>


У вас странное восприятие.  А [55] лишь относится к способу отрисовки дерева. А не к самому дереву. Имеется ввиду, что Ttreeview это выравнивание по левому краю, а [55] это выравнивание по центру.

Теперь по делу. Если вы не поняли [53] и [54], то для вас специально на пальцах.

Иванов
         ----[Победитель не извествен]
Петров
                                                      ----[Победитель не извествен]
Сидоров
         ----[Победитель не извествен]
Чупров

Если нужно добавить листья алгоритм перестроит дерево, но сделает это снизу вверх.

Иванов
         ----[Победитель не извествен]
Петров
                                                      ----[Победитель не извествен]
Сидоров
         ----[Победитель не извествен]
Чупров
                                                                                                 ----
Ляо
         ----[Победитель не извествен]
Цзы                                                      
                                                    ----[Победитель не извествен]
Дзе
         ----[Победитель не извествен]
Цхи                                                      

Если придется прикрутить еще и групповой отбор, чего по условия не было,
то сделать это можно, оставляю вам это в качестве домашнего задания.

P.S. Честно я даже боюсь с вами поговорить об LR анализе. Если LL вы еще понимаете, то LR для вас будет тяжелее.


MsGuns   (2008-10-09 09:12:00) [4]

>Ну это не куст. А лес.

Марсианский ?
:)


oxffff   (2008-10-09 08:54:00) [5]


> korneley ©   (08.10.08 23:07) [55]
>
> > Каким образом можно реализовать "перевёрнутое дерево",
> т.
> > е. дерево наоборот.где ветви сходятся к корню
>
> Только нарисовать самому. А ещё, сетка может с двух сторон,
>  к центру быть нарисована :)
>
> 1/8|-                        -|2/7
>     |                      |
>      >-|?/?|->|?/?|<-|?/?|<
>     |                      |
> 4/5|-                        -|3/6
>
> Вот это уже не дерево, а куст :)) "Совокупность веток, растущих
> из одного места" (с)


Ну это не куст. А лес.


oxffff   (2008-10-09 08:53:00) [6]


> MsGuns ©   (09.10.08 00:24) [56]
> >oxffff ©  
>
> Употребив к Вам слово "юноша", я имел в виду не возраст,
>  а исключительно опыт и навыки в программировании. И, судя
> по [53] [54], явно переоценил - на юношу не тянете. Хоть
> и нахватались где-то "умных" слов (что такое "атрибутировать"
> - ни разу не слышал, это что-то типа "крышевать" или "фундаментить"
>  по отношению к зданию, ага ?)
>
> То, что у Вас нет понятия о деревьях в информатике, ясно
> тут уже всем и давно и никакия грубость не поможет Вам выйти
> сухим из воды.
>
> Все-таки боролись бы Вы лучше, мальчик ;)))


Грубость на грубость.

>То, что у Вас нет понятия о деревьях в информатике

Честно улубнуло. Но к вашему сожалению здесь вы опять ошиблись.


Германн   (2008-10-09 01:19:00) [7]


> AdMeen ©   (09.10.08 00:54) [59]
>
> To MsGuns ©
> >>Занимались бы вы, товарищ, тем, с чем знакомы, а именно
> борьбой ;)
>
> Вы уж пожалуйста извините,но давайте я сам буду решать чем
> мне заниматься.Не удержался,сорри за оффтоп.
>

Так никто и не против. Но зачем переворачивать деревья? Они же погибнут сразу!
:)
Сорри за оффтоп.


Anatoly Podgoretsky   (2008-10-09 01:09:00) [8]

Каждый программист должен вырастить дерево и родить наследника.


AdMeen   (2008-10-09 00:54:00) [9]

To MsGuns ©
>>Занимались бы вы, товарищ, тем, с чем знакомы, а именно борьбой ;)

Вы уж пожалуйста извините,но давайте я сам буду решать чем мне заниматься.Не удержался,сорри за оффтоп.


MsGuns   (2008-10-09 00:45:00) [10]

А если серьезно по теме, то турнирную сетку можно, конечно изобразить и в виде TTreeView (какая разница, слева напрво рисовать этапы или справа налево), но есть много минусов:

- стандартная отрисовка узлов в TTreeView некрасивая, поэтому придется отрисовывать все "ручками" в соответствующем событии
- компонент не "умеет" ветвление рисовать в несколько сторон (как, например, показано в [55]
- нельзя вместо "пары" нарисовать таблицу, если вместо одного поединка предполагается круговой турнир (как, например, в футбольных турнирах, где круговые турниры чередуются с олимпийкой)
...

Можно, конечно, задачу предельно упростить, но тогда вопрос - зачем именно тривью, если много проще использовать для этих целей например TListView или даже TDrawGrid (и даже, страшно подумать !,- TStringGrid)
В общем вариантов море и, ИМХО, TTreeView в данном случае далек от оптимального

И последнее
Я, конечно, могу запамятовать, но на соревнованиях борцов (не помню какого стиля) раньше применялись именно круговые турниры. Не знаю повсеместно ли, но на Олимпиадах вроде да.


MsGuns   (2008-10-09 00:26:00) [11]

Посмотрел в анкету - хм.. 27 лет уже..
Вроде взрослый, а грубит и ругается как пацан с рогаткой. Анкета врет - Вам ведь не больше 20, точно ?

;)))

Сорри за офтоп, но хамство возмутило ;)


MsGuns   (2008-10-09 00:24:00) [12]

>oxffff ©  

Употребив к Вам слово "юноша", я имел в виду не возраст, а исключительно опыт и навыки в программировании. И, судя по [53] [54], явно переоценил - на юношу не тянете. Хоть и нахватались где-то "умных" слов (что такое "атрибутировать" - ни разу не слышал, это что-то типа "крышевать" или "фундаментить"  по отношению к зданию, ага ?)

То, что у Вас нет понятия о деревьях в информатике, ясно тут уже всем и давно и никакия грубость не поможет Вам выйти сухим из воды.

Все-таки боролись бы Вы лучше, мальчик ;)))


korneley   (2008-10-08 23:07:00) [13]


> Каким образом можно реализовать "перевёрнутое дерево",т.
> е. дерево наоборот.где ветви сходятся к корню

Только нарисовать самому. А ещё, сетка может с двух сторон, к центру быть нарисована :)

1/8|-                        -|2/7
    |                      |
     >-|?/?|->|?/?|<-|?/?|<
    |                      |
4/5|-                        -|3/6

Вот это уже не дерево, а куст :)) "Совокупность веток, растущих из одного места" (с)


oxffff   (2008-10-08 22:22:00) [14]


> Можно динамически стыковать заросли чепыжника после проведения
> схватки в более крупные заросли чепыжника и так далее. :
> )


Для MsGuns

Чисто технически это позволит доопределять количество листьев по необходимости в run time, сохранив при этом структуру дерева
и доатрибутировать узлы после проведения схватки и тут же добавлять родителя к этому дереву еще неатрибутированного его корня(то есть победитель не установлен). Таким образом в целом структура будет дерево, только сборка в обратном порядке.


oxffff   (2008-10-08 22:16:00) [15]


> Сергей М. ©   (08.10.08 16:52) [41]
>
> > от нормального дерева тут лишь - способ представления
>
>
> Почему ? И способ организации хранения тоже ..
>
> Только однокоренное дерево образуется лишь в конце соревнований,
>  а в ходе оных это еще не дерево, а заросли чепыжника -
> куча корней, из каждого из которых торчат ветки) ..


Чисто технически можно построить дерево изначально, зная количество участников, и атрибутировать узлы после проведения схватки. Можно динамически стыковать заросли чепыжника после проведения схватки в более крупные заросли чепыжника и так далее. :)


oxffff   (2008-10-08 22:04:00) [16]


> MsGuns ©   (08.10.08 20:34) [49]
> А где марсианин охфффф ? С секретом выращивания "обратных"
> деревьев ?


Что старый пердун подуматься не может?


oxffff   (2008-10-08 22:02:00) [17]


> MsGuns ©   (08.10.08 15:19) [30]
> >oxffff ©   (08.10.08 11:56) [21]
> >Я говорю не про путь к корню. А про обход узлов от кроны
> к корню.
>
> Юноша, у Вас, очевидно какие-то марсианские деревья. У обычных,
>  земных, по ветке нельзя ОБОЙТИ все дерево. Вы просто упретесь
> в ствол и все. При этом все листья перед Вашим взором будут
> в кучу и определить какие из них к каким веткам относятся
> просто физически невозможно, сидя на стволе.


Ну раз мы перешли на возраст,  то тогда

Дедушка, у вас очевидно какие-то  странные представления.
Дерево это не лес, так что никаких стволов нет.
И если вы не можете преставить как имея обычное преставления дерева, уметь собрать его в обратном порядке и также обойти его в обратном порядке, то рекомендую одеть очки и прочитать соответствующую литературу.


MsGuns   (2008-10-08 20:36:00) [18]

>AdMeen ©   (08.10.08 16:44) [38]
>Кто знаком с борьбой знают,что соревнования при приведённых участниках >проводятся именно по олимпийской системе.

Занимались бы вы, товарищ, тем, с чем знакомы, а именно борьбой ;)


MsGuns   (2008-10-08 20:34:00) [19]

А где марсианин охфффф ? С секретом выращивания "обратных" деревьев ?


MsGuns   (2008-10-08 20:32:00) [20]

>Palladin ©   (08.10.08 16:48) [39]
>2. маша ИШ света АП
>3. ИШ АП

Щаз придет data с булыжником и щетками. И покажет и тебе, и ИШу, и АПу.
Еще и Юре рикошетом достанется ;)))


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо