🗊Способы хранения и алгоритмы обработки различных структур в реляционной БД Списки, деревья, графы

Категория: Новости
Нажмите для полного просмотра!
Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №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Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №29Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №30Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №31Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №32Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №33Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №34Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №35Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №36Способы хранения и алгоритмы обработки различных структур в реляционной БД  Списки, деревья, графы, слайд №37

Содержание

Вы можете ознакомиться и скачать Способы хранения и алгоритмы обработки различных структур в реляционной БД Списки, деревья, графы. Презентация содержит 37 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Способы хранения и алгоритмы обработки различных структур в реляционной БД
Списки, деревья, графы
Описание слайда:
Способы хранения и алгоритмы обработки различных структур в реляционной БД Списки, деревья, графы

Слайд 2





Списки
Простой
Индексированный список
Связный и двусвязный список
Описание слайда:
Списки Простой Индексированный список Связный и двусвязный список

Слайд 3





Операции со списками
Добавление элемента в начало/конец/внутрь
Перемещение элемента вперед/назад
Удаление элемента
Выборка диапазона элементов (с/по)
Поиск предыдущего/следующего элемента
Описание слайда:
Операции со списками Добавление элемента в начало/конец/внутрь Перемещение элемента вперед/назад Удаление элемента Выборка диапазона элементов (с/по) Поиск предыдущего/следующего элемента

Слайд 4





Списки. Индексированный список
Добавление:
Находится нужный индекс и делается вставка с пересчетом индексов последующих элементов списка
Перемещение:
Старый индекс = Индекс перемещаемого элемента
Индекс перемещаемого элемента = Индекс новой позиции
Изменяем индексы элементов между Индексом новой позиции и Старым индексом (или наоборот)
Описание слайда:
Списки. Индексированный список Добавление: Находится нужный индекс и делается вставка с пересчетом индексов последующих элементов списка Перемещение: Старый индекс = Индекс перемещаемого элемента Индекс перемещаемого элемента = Индекс новой позиции Изменяем индексы элементов между Индексом новой позиции и Старым индексом (или наоборот)

Слайд 5





Списки. Индексированный список
Удаление:
Изменяем индексы последующих элементов после удаляемого
Выборка диапазона:
Запрос элементов с индексами между индексами крайних элементов
Следующий/предыдущий:
Запрос элемента с индексом на единицу большим/меньшим
Описание слайда:
Списки. Индексированный список Удаление: Изменяем индексы последующих элементов после удаляемого Выборка диапазона: Запрос элементов с индексами между индексами крайних элементов Следующий/предыдущий: Запрос элемента с индексом на единицу большим/меньшим

Слайд 6





Списки. Индексированный список
Преимущества:
Простота выборок
Простота хранения
Недостатки:
Изменение списка требует небольшой обработки остальных элементов
Варианты:
Индекс может быть например датой
Описание слайда:
Списки. Индексированный список Преимущества: Простота выборок Простота хранения Недостатки: Изменение списка требует небольшой обработки остальных элементов Варианты: Индекс может быть например датой

Слайд 7





Списки. Связный список
Добавление в начало:
Во вставляемом элементе указываем на первый и помечаем его первым
Добавление в конец:
Находим последний элемент и указываем на вставляемый
Добавление внутрь:
Находим элемент после которого нужно добавить
Во вставляемом элементе указываем следующий из найденного
В найденном элементе указываем на вставляемый
Описание слайда:
Списки. Связный список Добавление в начало: Во вставляемом элементе указываем на первый и помечаем его первым Добавление в конец: Находим последний элемент и указываем на вставляемый Добавление внутрь: Находим элемент после которого нужно добавить Во вставляемом элементе указываем следующий из найденного В найденном элементе указываем на вставляемый

Слайд 8





Списки. Связный список
Перемещение:
Находим предыдущий элемент от перемещаемого
В найденном элементе указываем на следующий элемент из перемещаемого
Если не нашли нет, значит помечаем следующий элемент как первый
Делаем вставку перемещаемого элемента в нужную позицию списка
Удаление:
Находим предыдущий элемент от удаляемого
В найденном элементе указываем на следующий элемент из удаляемого
Если не нашли нет, значит помечаем следующий элемент как первый
Описание слайда:
Списки. Связный список Перемещение: Находим предыдущий элемент от перемещаемого В найденном элементе указываем на следующий элемент из перемещаемого Если не нашли нет, значит помечаем следующий элемент как первый Делаем вставку перемещаемого элемента в нужную позицию списка Удаление: Находим предыдущий элемент от удаляемого В найденном элементе указываем на следующий элемент из удаляемого Если не нашли нет, значит помечаем следующий элемент как первый

Слайд 9





Списки. Связный список
Выборка диапазона:
В цикле начиная с начала диапазона по одному выбираем следующий элемент пока не конец диапазона
Следующий:
Выбираем из указателя в элементе
Предыдущий:
Если это не первый элемент, то выбрать элемент в котором есть указатель на текущий
Описание слайда:
Списки. Связный список Выборка диапазона: В цикле начиная с начала диапазона по одному выбираем следующий элемент пока не конец диапазона Следующий: Выбираем из указателя в элементе Предыдущий: Если это не первый элемент, то выбрать элемент в котором есть указатель на текущий

Слайд 10





Списки. Связный список
Преимущества:
Относительная простота изменения списка
Недостатки:
Сложная навигация по списку и выборки
Варианты:
Связующим полем может быть дата
Описание слайда:
Списки. Связный список Преимущества: Относительная простота изменения списка Недостатки: Сложная навигация по списку и выборки Варианты: Связующим полем может быть дата

Слайд 11





Деревья
Смежные вершины (Adjacency List)
Материализованный путь (Materialized Path)
Вложенные множества (Nested Set)
Описание слайда:
Деревья Смежные вершины (Adjacency List) Материализованный путь (Materialized Path) Вложенные множества (Nested Set)

Слайд 12





Операции с деревьями
Добавление узла
Перемещение узла
Удаление узла
Выборка пути от узла до корня
Выборка ветки дерева
Выборка узлов уровня
Выборка конечных узлов
Выборка соседних узлов
Описание слайда:
Операции с деревьями Добавление узла Перемещение узла Удаление узла Выборка пути от узла до корня Выборка ветки дерева Выборка узлов уровня Выборка конечных узлов Выборка соседних узлов

Слайд 13





Деревья. Смежные вершины
Добавление:
По аналогии со связным списком
Перемещение:
Удаление из связного списка
Вставка в связный список
Удаление:
Удаление из связного списка
Описание слайда:
Деревья. Смежные вершины Добавление: По аналогии со связным списком Перемещение: Удаление из связного списка Вставка в связный список Удаление: Удаление из связного списка

Слайд 14





Деревья. Смежные вершины
Выборка пути от узла до корня
В цикле выбираем родителя текущего узла, затем родителя делаем текущим узлом и продолжаем до корня
Выборка ветки дерева относительно узла:
Выбираем всех детей для текущего узла затем в цикле по детям выполняем рекурсивно такой же выбор детей
Описание слайда:
Деревья. Смежные вершины Выборка пути от узла до корня В цикле выбираем родителя текущего узла, затем родителя делаем текущим узлом и продолжаем до корня Выборка ветки дерева относительно узла: Выбираем всех детей для текущего узла затем в цикле по детям выполняем рекурсивно такой же выбор детей

Слайд 15





Деревья. Смежные вершины
Выборка конечных узлов:
Выбираем текущим узел корня дерева
Ищем всех, у кого являемся родителем
Если не нашли таких узлов, то добавляем текущий узел в выбранные
Если нашли, то в цикле рекурсивно выполняем с п.2) для найденных узлов
Описание слайда:
Деревья. Смежные вершины Выборка конечных узлов: Выбираем текущим узел корня дерева Ищем всех, у кого являемся родителем Если не нашли таких узлов, то добавляем текущий узел в выбранные Если нашли, то в цикле рекурсивно выполняем с п.2) для найденных узлов

Слайд 16





Деревья. Смежные вершины
Выборка уровня дерева:
Выбираем текущим узел корня дерева
Если достигнут нужный уровень, то добавляем узел в выбранные
Ищем всех, у кого являемся родителем, затем в цикле рекурсивно выполняем с п.2) для найденных узлов
Выборка соседних узлов:
Выбрать узлы у которых родитель совпадает с текущим узлом
Описание слайда:
Деревья. Смежные вершины Выборка уровня дерева: Выбираем текущим узел корня дерева Если достигнут нужный уровень, то добавляем узел в выбранные Ищем всех, у кого являемся родителем, затем в цикле рекурсивно выполняем с п.2) для найденных узлов Выборка соседних узлов: Выбрать узлы у которых родитель совпадает с текущим узлом

Слайд 17





Деревья. Смежные вершины
Преимущества:
Простота хранения
Простота изменения
Недостатки:
Сложность работы с ветками
Сложность работы с уровнями
Сложность определения принадлежности к родителям/детям
Описание слайда:
Деревья. Смежные вершины Преимущества: Простота хранения Простота изменения Недостатки: Сложность работы с ветками Сложность работы с уровнями Сложность определения принадлежности к родителям/детям

Слайд 18





Деревья. Материализованный путь
Добавление:
Находим место и путь в дереве для вставки
В добавляемом узле указывается полный путь
Перемещение:
Находим новое место и путь в дереве для вставки
У перемещаемого узла и всех его дочерних узлов изменяется полный путь
Удаление:
Удаление узла
Описание слайда:
Деревья. Материализованный путь Добавление: Находим место и путь в дереве для вставки В добавляемом узле указывается полный путь Перемещение: Находим новое место и путь в дереве для вставки У перемещаемого узла и всех его дочерних узлов изменяется полный путь Удаление: Удаление узла

Слайд 19





Деревья. Материализованный путь
Выборка пути от узла до корня
Выбираем те узлы дерева, в которых полный путь является началом полного пути заданного узла
Выборка ветки дерева относительно узла:
Выбираем те узлы, у которых полный путь начинается с полного пути заданного узла
Описание слайда:
Деревья. Материализованный путь Выборка пути от узла до корня Выбираем те узлы дерева, в которых полный путь является началом полного пути заданного узла Выборка ветки дерева относительно узла: Выбираем те узлы, у которых полный путь начинается с полного пути заданного узла

Слайд 20





Деревья. Материализованный путь
Выборка конечных узлов:
Выбрать те узлы, по которым не найдется узлов с полным путем начинающимся с полного пути текущего узла
Выборка уровня дерева:
Выбрать узлы, у которых в полном пути присутствует элемент искомого уровня
Выборка соседних узлов:
Выбрать узлы, у которых полный путь совпадает с заданным узлом за исключением последнего элемента пути
Описание слайда:
Деревья. Материализованный путь Выборка конечных узлов: Выбрать те узлы, по которым не найдется узлов с полным путем начинающимся с полного пути текущего узла Выборка уровня дерева: Выбрать узлы, у которых в полном пути присутствует элемент искомого уровня Выборка соседних узлов: Выбрать узлы, у которых полный путь совпадает с заданным узлом за исключением последнего элемента пути

Слайд 21





Деревья. Материализованный путь
Преимущества:
Простота работы с ветками
Простота определения принадлежности к родителям/детям
Недостатки:
Сложность работы с уровнями
Небольшая сложность в изменении
Варианты:
Добавить атрибут уровня
Описание слайда:
Деревья. Материализованный путь Преимущества: Простота работы с ветками Простота определения принадлежности к родителям/детям Недостатки: Сложность работы с уровнями Небольшая сложность в изменении Варианты: Добавить атрибут уровня

Слайд 22





Деревья. Вложенные множества
Добавление:
Пересчет узлов дерева находящихся правее добавляемого узла
Перемещение:
Пересчет узлов дерева находящихся между начальной позицией перемещаемого элемента и конечной позицией (или наоборот)
Удаление:
Пересчет узлов дерева находящихся правее удаляемого узла
Описание слайда:
Деревья. Вложенные множества Добавление: Пересчет узлов дерева находящихся правее добавляемого узла Перемещение: Пересчет узлов дерева находящихся между начальной позицией перемещаемого элемента и конечной позицией (или наоборот) Удаление: Пересчет узлов дерева находящихся правее удаляемого узла

Слайд 23





Деревья. Вложенные множества
Выборка пути от узла до корня
Выбираем те узлы дерева, у которых правое число больше правого числа и левое число меньше левого числа заданного узла
Выборка ветки дерева относительно узла:
Выбираем те узлы, у которых
	левое число находится между
	левым и правым числом
	заданного узла
Описание слайда:
Деревья. Вложенные множества Выборка пути от узла до корня Выбираем те узлы дерева, у которых правое число больше правого числа и левое число меньше левого числа заданного узла Выборка ветки дерева относительно узла: Выбираем те узлы, у которых левое число находится между левым и правым числом заданного узла

Слайд 24





Деревья. Вложенные множества
Выборка конечных узлов:
Выбрать те узлы, у которых разница между левым и правым числом равна 1
Выборка уровня дерева:
Алгоритма нет! (я не знаю)
Выборка соседних узлов:
Постепенно выбирать узлы, у которых левое число отличается на 1 от правого числа начального элемента и у которых правое число отличается на 1 от левого числа начального элемента
Описание слайда:
Деревья. Вложенные множества Выборка конечных узлов: Выбрать те узлы, у которых разница между левым и правым числом равна 1 Выборка уровня дерева: Алгоритма нет! (я не знаю) Выборка соседних узлов: Постепенно выбирать узлы, у которых левое число отличается на 1 от правого числа начального элемента и у которых правое число отличается на 1 от левого числа начального элемента

Слайд 25





Деревья. Вложенные множества
Преимущества:
Простота работы с ветками
Простота определения принадлежности к родителям/детям
Недостатки:
Сложность работы с уровнями
Сложность в изменении
Варианты:
Добавить атрибут уровня
Описание слайда:
Деревья. Вложенные множества Преимущества: Простота работы с ветками Простота определения принадлежности к родителям/детям Недостатки: Сложность работы с уровнями Сложность в изменении Варианты: Добавить атрибут уровня

Слайд 26





Графы
Список ребер
Описание слайда:
Графы Список ребер

Слайд 27





Операции с графами
Добавление вершины/ребра
Перемещение вершины/ребра
Удаление вершины/ребра
Получение всех вершин/ребер родителей
Получение всех вершин/ребер потомков
Поиск пути между вершинами
Описание слайда:
Операции с графами Добавление вершины/ребра Перемещение вершины/ребра Удаление вершины/ребра Получение всех вершин/ребер родителей Получение всех вершин/ребер потомков Поиск пути между вершинами

Слайд 28





Графы. Список ребер
Добавление:
Добавление ребер ведущих к и из вершины
Перемещение:
Удаление ребер ведущих к и из перемещаемой вершине
Добавление ребер ведущих к и из новой позиции вершины
Удаление:
Удаление ребер ведущих к и из удаляемой вершины
Описание слайда:
Графы. Список ребер Добавление: Добавление ребер ведущих к и из вершины Перемещение: Удаление ребер ведущих к и из перемещаемой вершине Добавление ребер ведущих к и из новой позиции вершины Удаление: Удаление ребер ведущих к и из удаляемой вершины

Слайд 29





Графы. Список ребер
Получение родителей:
Находим вершины приводящие к текущей вершине, включаем их в список просмотренных вершин
В цикле для найденных вершин за исключением тех, которые уже есть в списке просмотренных вершин, выполняем п.1) и продолжаем пока ест вершины
Описание слайда:
Графы. Список ребер Получение родителей: Находим вершины приводящие к текущей вершине, включаем их в список просмотренных вершин В цикле для найденных вершин за исключением тех, которые уже есть в списке просмотренных вершин, выполняем п.1) и продолжаем пока ест вершины

Слайд 30





Графы. Список ребер
Получение потомков:
Находим вершины выводящие из текущей вершины, включаем их в список просмотренных вершин
В цикле для найденных вершин за исключением тех, которые уже есть в списке просмотренных вершин, выполняем п.1) и продолжаем пока есть вершины
Описание слайда:
Графы. Список ребер Получение потомков: Находим вершины выводящие из текущей вершины, включаем их в список просмотренных вершин В цикле для найденных вершин за исключением тех, которые уже есть в списке просмотренных вершин, выполняем п.1) и продолжаем пока есть вершины

Слайд 31





Графы. Список ребер
Получение пути:
Аналогично процессу получения родителей для начальной вершины, но ищем до получения конечной вершины
Или аналогично процессу получения потомков для начальной вершины, но ищем до получения конечной вершины
Описание слайда:
Графы. Список ребер Получение пути: Аналогично процессу получения родителей для начальной вершины, но ищем до получения конечной вершины Или аналогично процессу получения потомков для начальной вершины, но ищем до получения конечной вершины

Слайд 32





Графы. Список ребер
Преимущества:
Простота ведения
Недостатки:
Сложность поиска пути
Сложность поиска родителей и потомков
Варианты:
Список достижимости
Описание слайда:
Графы. Список ребер Преимущества: Простота ведения Недостатки: Сложность поиска пути Сложность поиска родителей и потомков Варианты: Список достижимости

Слайд 33





Графы. Список достижимости
Описание слайда:
Графы. Список достижимости

Слайд 34





Графы. Список достижимости
Добавление:
Добавление ребра
Добавление всех путей ведущих по этому ребру
Перемещение:
Удаление ребра с зависимыми путями
Добавление ребра с зависимыми путями
Удаление:
Удаление ребра и всех зависимых
	 путей
Описание слайда:
Графы. Список достижимости Добавление: Добавление ребра Добавление всех путей ведущих по этому ребру Перемещение: Удаление ребра с зависимыми путями Добавление ребра с зависимыми путями Удаление: Удаление ребра и всех зависимых путей

Слайд 35





Графы. Список достижимости
Получение родителе:
Выбрать все «ребра» и их вершины по которым достижима заданная вершина
Получение потомков:
Выбрать все «ребра» и их вершины которые достижимы из заданной вершины
Получение пути:
Найти «ребро» в котором 
	присутствуют обе вершины
В цикле построить полный путь
Описание слайда:
Графы. Список достижимости Получение родителе: Выбрать все «ребра» и их вершины по которым достижима заданная вершина Получение потомков: Выбрать все «ребра» и их вершины которые достижимы из заданной вершины Получение пути: Найти «ребро» в котором присутствуют обе вершины В цикле построить полный путь

Слайд 36





Графы. Список достижимости
Преимущества:
Пути строятся при ведении графа
Простота навигации по графу
Недостатки:
Небольшая сложность ведения графа
Описание слайда:
Графы. Список достижимости Преимущества: Пути строятся при ведении графа Простота навигации по графу Недостатки: Небольшая сложность ведения графа

Слайд 37





Конец
Храните данные в базах данных
… и регулярно делайте backup!
Описание слайда:
Конец Храните данные в базах данных … и регулярно делайте backup!



Похожие презентации
Mypresentation.ru
Загрузить презентацию