Опришник писал(а):Дерево - это связанный граф не имеющий циклов.
Двоичное дерево это дерево у которого для каждой вершины максимальное количество детей - 2.
Опришник писал(а):О "методе графа" почитать нигде нельзя, такого не существует, есть алгоритмы на графах.
tyomitch писал(а):Опришник писал(а):Дерево - это связанный граф не имеющий циклов.
Двоичное дерево это дерево у которого для каждой вершины максимальное количество детей - 2.
Не так. У двоичного дерева различаются левый и правый потомок. Т.ч. двоичное дерево - это не частный вид дерева, и даже не граф.
tyomitch писал(а): Возможно, есть какой-то конкретный алгоритм, называемый "метод графа". Возможно, даже не один.
Опришник писал(а):tyomitch писал(а):Опришник писал(а):Дерево - это связанный граф не имеющий циклов.
Двоичное дерево это дерево у которого для каждой вершины максимальное количество детей - 2.
Не так. У двоичного дерева различаются левый и правый потомок. Т.ч. двоичное дерево - это не частный вид дерева, и даже не граф.
Левый и правый потомок - это всего лишь интерпретация, с помощью которой легче понимаются алгоритмы, и которая никакой роли не играет.
Опришник писал(а):А можно вопрос, а почему не граф? (не говоря уже о дереве) Или контр-пример можно? (двоичное дерево ведь вписуется в определение графа)
1 3 1
/ \ / / \
2 3 1 3 2
/
2
Опришник писал(а):tyomitch писал(а): Возможно, есть какой-то конкретный алгоритм, называемый "метод графа". Возможно, даже не один.
Ладна, твоя взяла, я просто не подумал что может быть есть класс CGraph в котором как методы реализованны некоторые алгоритмы...
tyomitch писал(а):Обращение порядка всех потомков - да, не играет. Некоторых - совершенно меняет всю картину. Представь себе отсортированное дерево (каждый узел больше своего левого потомка и меньше правого), в нём поиск занимает O(log N) времени именно благодаря тому, что потомки упорядочены.
tyomitch писал(а):Блин. Если у графа (или дерева) произвольным образом переставить вершины, получим тот же самый граф (дерево).
Если у B-дерева некоторым образом переставить вершины, получим новое B-дерево.
Sasha_karasov писал(а):Вот те книжонка в PDF. А вообще я быстро нашел! Заходишь в google пишешь «Теория графов», и все!
Дерзай!
Опришник писал(а):tyomitch писал(а):Обращение порядка всех потомков - да, не играет. Некоторых - совершенно меняет всю картину. Представь себе отсортированное дерево (каждый узел больше своего левого потомка и меньше правого), в нём поиск занимает O(log N) времени именно благодаря тому, что потомки упорядочены.
А теперь переименуем левого потомка в первого, а правого во второго, картина совсем не изменится...(А с утверждением что алгоритм бинарного поиска наглядно демонстрируют только бинарные деревья, я абсолютно согласен)
Опришник писал(а):tyomitch писал(а):Блин. Если у графа (или дерева) произвольным образом переставить вершины, получим тот же самый граф (дерево).
Если у B-дерева некоторым образом переставить вершины, получим новое B-дерево.
Ужасный контр-пример....Вот толко если граф ориентированный, и дерево тоже представить как ориентированный граф(вообще-то так и надо) то произвольным образом переставив вершины, дерево не изменится....
Графы и ор.графы - не одно и то же
Опришник писал(а):Понял что ты хочешь сказать, но не согласен....
Из курса дискретной математики из определения следует что в дереве порядок потомков не имеет значения....
Опришник писал(а):Но в алгоритмах всё же порядок имеет огромное значение.....
Опришник писал(а):НасчётГрафы и ор.графы - не одно и то же
это не совсем верно, так как как множество всех ор.графов является подмножеством всех графов(или даже они совпадают)
tyomitch писал(а):Опришник писал(а):Понял что ты хочешь сказать, но не согласен....
Из курса дискретной математики из определения следует что в дереве порядок потомков не имеет значения....
Правильно.Опришник писал(а):Но в алгоритмах всё же порядок имеет огромное значение.....
Правильно.
Из этих двух фактов и следует вывод: B-деревья - не деревья.
tyomitch писал(а):Не так. Это разные объекты. Так же, как пресловутые вектора и множества.
Опришник писал(а):А ты попробуй построить граф который не будет представим с помощью ор.графа, и вообще также попробуй и дерево построить и Б-дерево....
tyomitch писал(а):Опришник писал(а):А ты попробуй построить граф который не будет представим с помощью ор.графа, и вообще также попробуй и дерево построить и Б-дерево....
А ты попробуй построить множество, которое не будет представимо с помощью вектора.
tyomitch писал(а):(Блин, вот здесь чат бы здорово оказался кстати )
Опришник писал(а):Sasha_karasov писал(а):Вот те книжонка в PDF. А вообще я быстро нашел! Заходишь в google пишешь «Теория графов», и все!
Дерзай!
Лутше искать "Алгоритмы на графах"...Теория графов - это больше математика.
Опришник писал(а):tyomitch писал(а):Опришник писал(а):А ты попробуй построить граф который не будет представим с помощью ор.графа, и вообще также попробуй и дерево построить и Б-дерево....
А ты попробуй построить множество, которое не будет представимо с помощью вектора.
{1,2,3,4,5} оно же {5,4,3,2,1} (тебе аж 120 векторов понадобится чтоб представить...)
Sasha_karasov писал(а):Графы – это и есть математики
Программирование – это тоже типа математики
tyomitch писал(а):Опришник писал(а):tyomitch писал(а):Опришник писал(а):А ты попробуй построить граф который не будет представим с помощью ор.графа, и вообще также попробуй и дерево построить и Б-дерево....
А ты попробуй построить множество, которое не будет представимо с помощью вектора.
{1,2,3,4,5} оно же {5,4,3,2,1} (тебе аж 120 векторов понадобится чтоб представить...)
Прекрасно. Значит, вот такой граф не представим с помощью ор.графа:
1-2-3-4-5
Тебе аж 16 ор.графов понадобится чтоб представить...
Опришник писал(а):tyomitch писал(а):Прекрасно. Значит, вот такой граф не представим с помощью ор.графа:
1-2-3-4-5
Тебе аж 16 ор.графов понадобится чтоб представить...
Меняем - на <-> и всё...
напомню: чуть раньше ты писал(а):множество всех ор.графов является подмножеством всех графов(или даже они совпадают)
tyomitch писал(а):Прекрасно. А как представить с помощью графа вот такой ор.граф?
1->2<->3<-4<-5
tyomitch писал(а):напомню: чуть раньше ты писал(а):множество всех ор.графов является подмножеством всех графов(или даже они совпадают)
Опришник писал(а):tyomitch писал(а):Прекрасно. А как представить с помощью графа вот такой ор.граф?
1->2<->3<-4<-5
С помощью не ориентированного графа никак, а что?
Опришник писал(а):tyomitch писал(а):напомню: чуть раньше ты писал(а):множество всех ор.графов является подмножеством всех графов(или даже они совпадают)
А что не так разве? Просто я настаиваю на том, что {графы} = {ор.графы} U {не ор.графы}
tyomitch писал(а):Как может быть большее частью меньшего?
tyomitch писал(а):Значит, ор.графов "больше", чем неор.графов.
(Раз каждому неор.графу соотв. ор.граф, и не каждому ор.графу соотв. неор.граф)
напомню: чуть раньше я писал(а):множество всех ор.графов является подмножеством всех графов(или даже они совпадают)
tyomitch писал(а):...Как может быть большее частью меньшего?
GSerg писал(а):tyomitch писал(а):Как может быть большее частью меньшего?
Нет, я не разбираюсь в теории графов...
Просто на эту фразу хочу ответить...
Как-то раз я сохранял реестр одной Win98 в текстовый файл. Сохранил весь реестр. Получилось около 3 метров.
Сразу поле этого я выделил одну ветку этого реестра (DYN_DATA) и сохранил только её. Получилось почти 8 метров.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 185