12.Древовидные и табличные структуры.
С таблицами данных мы тоже хорошо знакомы, достаточно вспомнить всем известную таблицу умножения. Табличные структуры отличаются от списочных тем, что элементы данных определяются адресом ячейки, который состоит не из одного параметра, как в списках, а из нескольких. Для таблицы умножения, например, адрес ячейки определяется номерами строки и столбца. Нужная ячейка находится на их пересечении, а элемент выбирается из ячейки.
При хранении табличных данных количество разделителей должно быть больше, чем для данных, имеющих структуру списка. Например, когда таблицы печатают в книгах, строки и столбцы разделяют графическими элементами — линиями вертикальной и горизонтальной разметки:
Планета
Расстояние до Солнца, а.е.
Относительная масса
Количество спутников
Если нужно сохранить таблицу в виде длинной символьной строки, используют один символ-разделитель между элементами, принадлежащими одной строке, и другой разделитель для отделения строк, например так:
Для розыска элемента, имеющего адрес ячейки ( m , n ), надо просмотреть набор данных с самого начала и пересчитать внешние разделители. Когда будет отсчитан m — 1 разделитель, надо пересчитывать внутренние разделители. После того как будет найден n — 1 разделитель, начнется нужный элемент. Он закончится, когда будет встречен любой очередной разделитель.
Еще проще можно действовать, если все элементы таблицы имеют равную длину. Такие таблицы называют матрицами . В данном случае разделители не нужны, поскольку все элементы имеют равную длину и количество их известно. Для розыска элемента с адресом ( m , n ) в матрице, имеющей М строк и N столбцов, надо просмотреть ее с самого начала и отсчитать a[N(m — 1) + ( n — 1)] символ, где а — длина одного элемента. Со следующего символа начнется нужный элемент. Его длина тоже равна а, поэтому его конец определить нетрудно.
Таким образом, табличные структуры данных (матрицы) — это упорядоченные структуры, в которых адрес элемента определяется номером строки и номером столбца, на пересечении которых находится ячейка, содержащая искомый элемент.
Многомерные таблицы . Выше мы рассмотрели пример таблицы, имеющей два измерения (строка и столбец), но в жизни нередко приходится иметь дело с таблицами, у которых количество измерений больше. Вот пример таблицы, с помощью которой может быть организован учет учащихся.
Размерность такой таблицы равна пяти, и для однозначного отыскания данных об учащемся в подобной структуре надо знать все пять параметров (координат).
Древовидная структура является одним из способов представления иерархической структуры в графическом виде. Древовидной структурой называется благодаря тому, что граф выглядит как перевернутое дерево. По этой же причине говорят, что корневой узел (корень) находится на самом верху, а листья — внизу.
В теории графов дерево — связанный ациклический граф (иногда его называют направленным ациклическим графом, у которого каждая вершина имеет степень 0 или 1). Ациклический граф без жесткого условия связывания иногда называется лесом (так как он состоит из деревьев).
Из совокупности древовидных структур состоят неоднородные семантические сети.
Древовидные структуры по видам связей
Межды узлами ДС могут иметь место различные семантические отношения.
В приведённом выше примере-это принадлежность к какой-либо сфере деятельности (отношения Целое-Часть). К такому же типу относятся спецификации использующиеся в технике для описания состава устройства.
Хорошо известны ДС классифицирующие множества объектов (отношения Общее-Частное) классификации живых существ,звёзд,химических элементов и т. п.
Если связи соответствуют временным отношениям образуются такие ДС как Геохронологическая шкала или родословные деревья (генеалогическое древо),
- 1. Классификация элементов и узлов эвм
- 2.Арифметические основы эвм. Типы данных, представление, перевод чисел коды чисел -пряиой обратный дополнительный
- 5. Методы адресации, выполнение команд, прерывания, переместимость.
- 6.Микропроцессоры, микро и мини эвм, ес эвм, семейства эвм[1,2]..............
- 7. Персональные эвм,обзор основных типов,аппаратные елементы
- 8. Организация наборов данных- методы доступа в наборах, записи, блоки, форматы [5,16].....
- 9. Фунции и состав типичной операционной системы, режимы работы
- 10 Основные команды операционной системы
- 11.Классификация структур данных, задачи обработки, массивы,.Списки
- 12.Древовидные и табличные структуры.
- 13.Методы поиска в массиве
- 14. Методы внутренней сортировки
- 15.Внешняя сортировка наборов данных
- 16.Жизненный цикл программы, тз..
- 17.Методы проектирования программ
- 18.Методы тестирования и отладки программ
- 19.Понятие о технологии программирования.Качество по
- 20.Классификация и основы построения по
- 21.Банки данных, архитектура бд
- 22.Субд и их функции.
- 23.Реляционная алгебра и обработка данных
- 24.Пакеты прикладных программ
- 25.Информационно-поисковые системы.
- 26.Системы искусственного интеллекта.Диалог с пользователем
- 27.Программная документация.
- 28.Основные понятия сапр-функциональное и системное наполнение
- 29.Локальные сети, протоколы
- 30.Основные методы решения уравнений
- 30.Основные методы решения уравнений
- 31.Квадратурные формулы, решение задачи Коши
- 32.Структурное программирование