Элементы теории алгоритмов — это элементы науки изучающей обобщённые характеристики и правила создания алгоритмов.
Введение
Главным элементом при реализации программных приложений считается алгоритм, который является набором последовательностей исполнения операций, ведущих от исходных информационных данных к требуемому результату. Необходимость в алгоритмах возникла по причине ограниченности размеров доступной памяти, времени работы компьютера и иных обстоятельств, которые появляются при попытке решения поставленных задач. Сегодня существует большое количество уже реализованных алгоритмов, различных по уровню сложности и предназначающихся для разных сфер человеческой деятельности.
Это обстоятельство предоставляет возможность решения фактически любых, стоящих перед программистами задач, если эти алгоритмические структуры правильно применяются в разных комбинациях. Информационная структура является комплектом компонентов данных и всего набора взаимных связей. Различных информационных структур известно достаточно много, причём каждая структура предназначена для использования в конкретных областях.
При формировании большинства прикладных программных приложений, основным параметром, определяющим выбор алгоритма, считается именно структурная организация информации. После того, как данный выбор осуществлён, процесс формирования алгоритма становится обычной рутинной задачей, не вызывающей трудностей с её решением. Однако необходимо заметить, что одинаковые информационные данные при различной их структурной организации, могут потребовать наличие различных объёмов памяти. И одинаковые операции, при разной структуре той же самой информации, способны привести к формированию алгоритмов разной эффективности. То есть, осуществление выбора какого-либо решения по формированию алгоритма может в существенной степени зависеть от правильного выбора начальной структурной организации информации.
Элементы теории алгоритмов
Главными характеристиками, на базе которых выполняется классификация структуры информационных данных, являются следующие параметры:
- Методики, на основе которых отображаются данные.
- Характеристики памяти, которая используется для хранения информационных данных.
- Степень сложности отображения данных.
- Методы разделения элементов в самой структуре.
- Уровень допустимой изменяемости информационных данных.
По способам отображения информационные данные делятся на логические и физические структуры. Физической структурой является способ хранения информации в компьютерной памяти. Логическая структура представляет собой такую информационную структуру, которая не зависит от способа её хранения в памяти компьютера.
Практически всегда будут присутствовать отличия между структурой, представленной физически, и её отображением в логическом формате, зависящем от внешних параметров и самой структуры. Известны специализированные процедуры, которые отображают физические структуры в логическом формате, а также есть и обратные операции.
По типу применяемой памяти для сохранения информационных данных, в соответствии с её размещением и уровнем доступа, известны внутренние и внешние структуры данных. Внутренняя структура подразумевает сохранение информации в зоне статической или динамической компьютерной памяти. При внешней структуре предполагается расположение информационных данных во внешних устройствах памяти, и такая информация является файловой структурой.
По уровню сложности представления данных, структуры подразделяются на элементарные и составные. Элементарными считаются такие структуры информационных данных, которые не могут быть поделены на составные части. Касательно физической структуры следует отметить, что в реальной структуре компьютера и применяемой в неё операционной системе фактически всегда можно заранее выделить элементарные составляющие данных и их расположение в памяти.
С позиций логики, данные в виде элементарных компонентов просто являются неделимыми. Составными структурами информационных данных считаются такие структуры, которые могут быть поделены на составные части, являющиеся, с другой стороны, другими структурами данных.
Основным параметром составных структур информационных данных является очерёдность размещения их элементов. В соответствии с данным параметром, структуры данных бывают линейные и нелинейные. В свою очередь, линейные структуры могут быть последовательными и произвольными, что задаётся местоположением их элементов в памяти. Нелинейными являются структуры данных, которые имеют многосвязные списки, графы и так далее.
Изменчивость характеризуется как колебания количества элементов или их взаимосвязей. Тем не менее, изменчивость структуры не предполагает, что следует обязательно вести учёт колебаний значений информационных элементов, так как в этом варианте любые информационные структуры могут считаться имеющими изменчивость.
Алгоритмом обработки информации является метод решения задачи, который может быть реализуем в определённых программных средах. Скрупулёзная доводка алгоритма считается самым важным компонентом процедуры решения задачи во всех областях использования. Формирование алгоритма решения какой-нибудь практической проблемы следует начинать с приблизительной оценки уровня её сложности, выделения граничных значений исходных данных, деления общей проблемы на набор подзадач, имеющих меньшую сложность. Обычно, не выполняется привязка алгоритма к его конкретной будущей реализации, так как есть достаточно много языков программирования. Они в некоторой степени зависят от своей платформы и аппаратного обеспечения. Аналогичные по структуре, но сформированные на разных языках алгоритмы, могут выдать разные по эффективности результаты. Необходимо учитывать, что некоторые языки программирования оснащены специальными библиотеками, реализующими базовые процедуры обработки информационных данных.