Структура данных

Рассмотрение общей характеристики данных. Исследование особенностей и назначения линейных, табличных и иерархических структур данных, анализ процесса их упорядочения. Рассмотрение основных режимов обработки данных. Описание алгоритма решения задачи.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 20.04.2019
Размер файла 27,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

Введение

Глава 1. Теоретическая часть

1.1 Общая характеристика данных

1.2 Линейные структуры данных

1.3 Табличные структуры данных

1.4 Иерархические структуры данных

1.5 Упорядочение структур данных

1.6 Режимы обработки данных

Глава 2. Практическая часть

2.1 Общая характеристика задачи

2.2 Описание алгоритма решения задачи

Заключение

Список использованной литературы

данные линейный иерархический упорядочение

Введение

Веками человечество накапливало знания, навыки работы, сведения об окружающем нас мире, другими словами - собирало информацию. Вначале информация передавалась из поколения в поколение в виде преданий и устных рассказов. Возникновение и развитие книжного дела позволило передавать и хранить информацию в более надежном письменном виде. Открытия в области электричества привели к появлению телеграфа, телефона, радио, телевидения - средств, позволяющих оперативно передавать и накапливать информацию. Развитие прогресса обусловило резкий рост информации, в связи с чем вопрос о ее сохранении и переработке становился год от года острее. С появлением вычислительной техники значительно упростились способы хранения, а главное, обработки информации. Развитие вычислительной техники на базе микропроцессоров приводит к совершенствованию компьютеров и программного обеспечения. Появляются программы, способные обработать большие потоки информации. С помощью таких программ создаются информационные системы. Целью любой информационной системы является обработка данных об объектах и явлениях реального мира и предоставление нужной человеку информации о них. С моей точки зрения актуально рассмотреть процесс превращения данных в информационные ресурсы и формы представления данных.

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

дать общую характеристику данным;

изучить различные структуры данных;

проанализировать упорядочение структур данных;

рассмотреть режимы обработки данных;

Объектом исследования являются данные. Предметом исследования служат структуры данных. Информационной базой исследования являются публикации в сети Интернет и учебная литература по изучаемому вопросу.

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

Глава 1. Теоретическая часть

1.1 Общая характеристика данных

Данные - это материальные объекты произвольной формы, выступающие в качестве средства представления информации. Преобразование и обработка данных позволяют извлечь информацию, т.е. знание о том или ином предмете, процессе, явлении. Другими словами данные - диалектическая составная часть информации. Они представляют собой зарегистрированные сигналы. В соответствии с методом регистрации данные могут храниться и транспортироваться на носителях различных видов. Например, на бумаге данные регистрируются путем изменения оптических характеристик ее поверхности. Изменение оптических свойств используется также в устройствах, осуществляющих запись лазерным лучом на пластмассовых носителях с отражающим покрытием (CD-ROM).

Процесс документирования превращает данные в информационные ресурсы, которые являются основой любой информационной системы. Данные могут быть представлены в виде файлов, базы данных (данные, организованные с определенной целью), базы знаний.

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

сбор данных - накопление информации с целью обеспечения достаточной полноты для принятия решений;

формализация данных - приведение данных, поступающих из разных источников, к одинаковой форме, чтобы сделать их сопоставимыми между собой, то есть повысить их уровень доступности;

фильтрация данных - отсеивание «лишних» данных, в которых нет необходимости для принятия решений;

сортировка данных - упорядочение данных по заданному признаку с целью удобства использования; повышает доступность информации;

архивация данных - организация хранения данных в удобной и легкодоступной форме;

защита данных - комплекс мер, направленных на предотвращение утраты, воспроизведения и модификации данных;

транспортировка данных - прием и передача (доставка и поставка) данных между удаленными участниками информационного процесса;

преобразование данных - перевод данных из одной формы в другую или из одной структуры в другую.

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

1.2 Линейные структуры данных

Линейные структуры - это хорошо знакомые нам списки. Список - это простейшая структура данных, отличающаяся тем, что каждый элемент данных однозначно определяется своим номером в массиве. Проставляя номера на отдельных страницах рассыпанной книги, мы создаем структуру списка. Обычный журнал посещаемости занятий, например, имеет структуру списка, поскольку все студенты группы зарегистрированы в нем под своими номерами, при этом не могут два студента быть зарегистрированы с одним и тем же номером.

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

№ п/п Фамилия, Имя, Отчество

1 Аистов Александр Алексеевич

2 Бобров Борис Борисович

3 Воробьева Валентина Владиславовна

27 Сорокин Сергей Семенович

Разделителем может быть и какой-нибудь специальный символ. Нам хорошо известны разделители между словами - это пробелы. В русском и во многих европейских языках общепринятым разделителем предложений является точка. В рассмотренном нами классном журнале в качестве разделителя можно использовать любой символ, который не встречается в самих данных, например символ «*». Тогда наш список выглядел бы так:

Аистов Александр Алексеевич * Бобров Борис Борисович * Воробьева Валентина Владиславовна * … * Сорокин Сергей Семенович

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

Еще проще можно действовать, если все элементы списка имеет равную длину. В этом случае разделители в списке вообще не нужны. Для розыска элемента с номером n надо просмотреть список с самого начала и отсчитать а(n-1) символов, где а - длина одного элемента. Со следующего символа начнется нужный элемент. Его длина тоже равна а, поэтому его конец определить нетрудно. Такие упрощенные списки, состоящие из элементов равной длины, называют векторами данных. Работать с ними особенно удобно.

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

Таким образом, линейные структуры данных (списки) - это упорядоченные структуры, в которых адрес элемента однозначно определяется его номером.

Линейный односвязный список

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

Двусвязный список

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

Кольцевой список

Кольцевой список - это список, у которого последний элемент связан с первым. Кольцевой список можно сделать как односвязным, так и двухсвязным.

Очередь

Очередь - это линейная динамическая структура данных, для которой выполняется правило: добавление новых данных возможно только в конец этой структуры, а удаление (извлечение) - только с начала. В англоязычной литературе этот принцип называется FIFO (First Input - First Output, т.е. первый пришёл - первый ушёл). Примером из реальной жизни может быть очередь из покупателей к кассе в магазине. Как не трудно понять, очередь - это линейный список, для которого определены всего две основные операции: добавление в конец и извлечение с начала. Значит, удобно иметь два указателя: на начало и конец этой динамической структуры. Но списки бывают односвязные и двухсвязные. Какой использовать? Подойдёт только двухсвязный список.

Стеки

Стек - динамическая структура данных, для которой выполняется правило: последним пришёл - первым ушёл LIFO ( Last In, First Out). Таким образом, и дополнение новых данных, и извлечение их из стека всегда выполняется с одной стороны. Вершина стека - эта та его часть, через которую ведётся вся работа. На вершину стека добавляются новые элементы, и с вершины стека снимаются (удаляются) элементы. В общем, стек - это односвязный список, для которого определены только две операции: добавление и удаление из начала списка. Примером стека может служить коробка, в которую сверху укладывают книги. Извлекать книг и также приходится сверху

1.3 Табличные структуры данных

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

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

Планета

Расстояние до Солнца,

Относительная масса

Количество спутников

Меркурий

0,39

0,056

0

Венера

0,67

0,88

0

Земля

1,0

1,0

1

Марс

1,51

0,1

2

Юпитер

5,2

318

16

В двумерных таблицах, которые печатают в книгах, применяется два типа разделений - вертикальные и горизонтальные

Если нужно сохранить таблицу в виде длинной символьной строки, используют один символ-разделитель между элементами, принадлежащими одной строке, и другой разделитель для отделения строк, например так:

Меркурий0,39*0,056*0#Венера*0,67*0,88*0#Земля*1,0*1,0*1#Марс*1,51*0,1*2#...

Для розыска элемента, имеющего адрес ячейки (m, n), надо просмотреть набор данных с самого начала и пересчитать внешние разделители. Когда будет отсчитан m-1 разделитель, надо пересчитывать внутренние разделители. После того как будет найден n-1 разделитель, начнется нужный элемент. Он закончится, когда будет встречен любой очередной разделитель.

Еще проще можно действовать, если все элементы таблицы имеют равную длину. Такие таблицы называют матрицами. В данном случае разделители не нужны, поскольку все элементы имеют равную длину и количество их известно. Для розыска элемента с адресом (m, n) в матрице, имеющей M строк и N столбцов, надо просмотреть ее с самого начала и отсчитать а [N (m-1)+(n-1)] символ, где а - длина одного элемента. Со следующего символа начнется нужный элемент. Его длина равна а, поэтому его конец определить нетрудно.

Таким образом, табличные структуры данных (матрицы) - это упорядоченные структуры, в которых адрес элемента определяется номером строки и номером столбца, на пересечении которых находится ячейка, содержащая искомый элемент. Мы рассмотрели пример таблицы, имеющей два измерения (строка и столбец), но нередко приходится иметь дело с таблицами, у которых количество измерений больше, т.е. с многомерными таблицами. Вот пример таблицы, с помощью которой может быть организован учет учащихся:

Номер факультета: 3

Номер курса (на факультете): 2

Номер специальности (на курсе): 2

Номер группы в потоке одной специальности: 1

Номер учащегося в группе: 19

Размерность такой таблицы равна пяти, и для однозначного отыскания данных об учащемся в подобной структуре надо знать все пять параметров.

1.4 Иерархические структуры данных

Нерегулярные данные, которые трудно представить в виде списка или таблицы, часто представляют в виде иерархических структур. С подобными структурами мы знакомы по обыденной жизни. Иерархическую структуру имеет система почтовых адресов. Подобные структуры также широко применяются в научных систематизациях и всевозможных классификациях.

В иерархической структуре адрес каждого элемента определяется путем доступа (маршрутом), ведущим от вершины структуры к данному элементу. Вот, например, как выглядит путь доступа к команде, запускающей программу Калькулятор:

Пуск > Программы > Стандартные > Калькулятор.

Дихотомия данных. Основным недостатком иерархических структур данных является увеличенный размер пути доступа. Очень часто бывает так, что длина маршрута оказывается больше, чем длина самих данных, к которым он ведет. Поэтому в информатике применяют методы для регуляризации иерархических структур с тем, чтобы сделать путь доступа компактным. Один из методов получил название дихотомии. Его суть понятна из примера, представленного.

В иерархической структуре, построенной методом дихотомии, путь доступа к любому элементу можно представить как путь через рациональный лабиринт с поворотами налево (0) или направо (1) и, таким образом, выразить путь доступа в виде компактной двоичной записи. В нашем примере путь доступа к текстовому процессору Word 2000 выразится следующим двоичным числом: 1010.

1.5 Упорядочение структур данных

Списочные и табличные структуры являются простыми. Ими легко пользоваться, поскольку адрес каждого элемента задается числом (для списка), двумя числами (для двумерной таблицы) или несколькими числами для многомерной таблицы. Они также легко упорядочиваются. Основным методом упорядочения является сортировка. Данные можно сортировать по любому избранному критерию, например: по алфавиту, по возрастанию порядкового номера или по возрастанию какого-либо параметра.

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

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

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

Недостатком иерархических структур является относительная трудоемкость записи адреса элемента данных и сложность упорядочения. Часто методы упорядочения в таких структурах основывают на предварительной индексации, которая заключается в том, что каждому элементу данных присваивается свой уникальный индекс, который можно использовать при поиске, сортировке и т.п. Ранее рассмотренный принцип дихотомии на самом деле является одним из методов индексации данных в иерархических структурах. После такой индексации, данные легко разыскиваются по двоичному коду связанного с ними индекса.

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

1.6 Режимы обработки данных

Режим обработки данных - способ выполнения заданий (задач), характеризующийся порядком распределения ресурсов системы между заданиями (задачами). Требуемый режим обработки данных обеспечивается управляющими программами операционной системы, которые выделяют заданиям оперативную и внешнюю память, устройства ввода-вывода, процессорное время и прочие ресурсы в соответствующем порядке с учетом атрибутов заданий - имен пользователей, приоритетов заданий, сложности задач и вычислений и др.

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

Мультипрограммная обработка. В общем случае процесс решения задачи сводится к последовательности этапов процессорной обработки, ввода и вывода данных и обращений к внешним запоминающим устройствам. При этом задача в каждый момент времени обрабатывается, как правило, одним устройством, а остальные не могут использоваться до завершения работы этого устройства, следовательно, могут распределяться для выполнения других задач. Режим обработки, при котором в системе одновременно обрабатывается несколько задач, называется мультипрограммной обработкой или мультипрограммированием. Цель мультипрограммирования - увеличение производительности системы.

Оперативная и пакетная обработка данных. Применительно к СОД, предназначенным для информационного обслуживания пользователей (но не технических объектов и систем). Оперативная обработка данных характеризуется: 1) малым объемом вводимых-выводимых данных и вычислений, приходящимся на одно взаимодействие пользователя с системой (на одну задачу); 2) высокой интенсивностью взаимодействия и вытекающим отсюда требованием уменьшения времени ответа. Оперативная обработка необходима в системах банковских, резервирования билетов, справочных и т.д. Пакетная обработка данных характеризуется: 1) большим объемом вводимых-выводимых данных и вычислений, приходящимся на одно взаимодействие пользователя с системой (на одну задачу); 2) низкой интенсивностью взаимодействия и допустимостью большого времени ответа. Пакетная обработка типична для вычислительных центров научно-технического профиля, систем обработки учетно-статистических данных, результатов геофизических измерений и т.д.

В рамках оперативной обработки выделяют два режима: запрос-ответ и диалоговый. Режим запрос-ответ характеризуется меньшей интенсивностью и большей продолжительностью взаимодействия по сравнению с диалоговым режимом. Типичный пример использования режима запрос-ответ - справочная служба на основе ЭВМ. При этом пользователь формирует текст запроса, который вводится в ЭВМ, и ответ должен быть получен за несколько десятков секунд. Работа в диалоговом режиме предполагает практически мгновенный контакт пользователя с системой, при котором система реагирует на действия пользователя с задержкой в несколько секунд или доли секунды. Быстрота реакции системы на действия пользователя является непременным условием диалогового режима. Стоимость выполнения программы в диалоговом режиме больше, чем в пакетном, из-за немалых издержек, связанных с управлением процессами со стороны операционной системы.

Обработка в реальном масштабе времени. В системах управления реальными объектами, построенных на основе ЭВМ, процесс управления сводится к решению фиксированного набора задач. Каждая задача инициируется либо периодически, либо при возникновении определенных ситуаций в системе. При этом темп инициирования задач и время получения результатов вычислений жестко регламентируются динамическими свойствами управляемого объекта: технологической установки, подвижного объекта и др. Это означает, что на время решения задач управления налагаются ограничения, определяющие предельно допустимое время ответа для задач соответственно. Режим, при котором организация обработки данных подчиняется темпу процессов вне СОД, называется обработкой в реальном масштабе времени (РМВ).

Режим телеобработки данных. Телеобработка (удаленная обработка) - режим обработки данных при взаимодействии пользователей с СОД через линии связи. Телеобработка рассматривается в качестве самостоятельного режима обработки данных по следующим причинам. Во-первых, удаленность пользователей от СОД и наличие между ними специфического средства передачи данных - линии связи - порождает необходимость в специальных действиях пользователей при организации доступа к системе и завершении сеанса работы. Во-вторых, наличие линий связи налагает ограничения на форму и время обмена данными между пользователями и СОД. Эти ограничения приводят к необходимости специальных способов организации данных и доступа к ним, что в свою очередь отражается на структуре прикладных программ, используемых в режиме телеобработки. Режим телеобработки характеризуется, прежде всего, спецификой доступа пользователя к системе и системы к данным, передаваемым через удаленные терминалы, т.е. связан в первую очередь с организацией обработки данных внутри СОД. При этом пользователи могут работать в режимах пакетном, диалоговом или "запрос-ответ". Каждый из этих режимов характеризуется специфичным способом взаимодействия пользователей с системой и соответствующим временем ответа.

Глава 2. Практическая часть

2.1 Общая характеристика задачи

Построить структуру данных линейного типа.

Создать массив данных

Заполнить данные (автоматически)

Осуществить поиск

Вывести на экран

2.2 Описание алгоритма решения задачи

Первым делом в главной функции объявляем массив с размерностью n, в нашем случае пятьдесят, и объявляем переменную requiredKey - искомое значение (ключ) - затем, используя функцию srand (чтобы использовать эту функцию необходимо подключение библиотеки <ctime>), компилятор регенерирует случайные числа, а потом обрабатываем данные с помощью цикла for, взявь, при этом, вместо второго аргумента цикла переменную arrSize ,объявленную прежде. Используя функцию setw (которая возможна при подключении библиотеки <iomanip>) разделяем данные, для ясности, и после каждой пятой итерацией переносим строку. Затем осуществяем поиск, если программа не находит данные, заданные пользователем, программа просит повторно ввести данные, а если данные были найдены, то возвращает номер ячейки, где хранились данные, и его содержимое.

Пример программи:

#include <iostream>

#include <iomanip>

#include <ctime>

using namespace std;

//прототипы функций

int linSearch(int arr[], int requiredKey, int size); // линейный поиск

void showArr(int arr[], int size); // показ массива

int main()

{

setlocale(LC_ALL, "rus");

const int arrSize = 50;

int arr[arrSize];

int requiredKey = 0; // искомое значение (ключ)

int nElement = 0; // номер элемента массива

srand(time(NULL));

//запись случ. чисел в массив от 1 до 50

for (int i = 0; i < arrSize; i++)

{

arr[i] = 1 + rand() % 50;

}

showArr(arr, arrSize);

cout << "Какое число необходимо искать? ";

cin >> requiredKey; // ввод искомого числа

//поиск искомого числа и запись номера элемента

nElement = linSearch(arr, requiredKey, arrSize);

if (nElement != -1)

{

//если в массиве найдено искомое число - выводим индекс элемента на экран

cout << "Значение " << requiredKey << " находится в ячейке с индексом: " << nElement << endl;

}

else

{

//если в массиве не найдено искомое число

cout << "В массиве нет такого значения" << endl;

}

system("pause");

return 0;

}

//вывод массива на экран

void showArr(int arr[], int arrSize)

{

for (int i = 0; i < arrSize; i++)

{

cout << setw(4) << arr[i];

if ((i + 1) % 10 == 0)

{

cout << endl;

}

}

cout << endl << endl;

}

//линейный поиск

int linSearch(int arr[], int requiredKey, int arrSize)

{

for (int i = 0; i < arrSize; i++)

{

if (arr[i] == requiredKey)

return i;

}

return -1;

}

Заключение

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

Главной целью нашей работы было знакомство с теоретическим материалом, касающийся информационных структур и разработка программного средства “Динамические типы данных”.

Достижением этой цели и согласно поставленной гипотезы определялись следующие задачи:

Изучить методическую литературу по теме динамические информационные структуры;

Проанализировать виды динамических информационных структур;

Разработать программный продукт по теме исследования.

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

Литература

1. Алексеев, В. Е. Графы и алгоритмы. Структуры данных. Модели вычислений / В.Е. Алексеев, В.А. Таланов. - М.: Бином. Лаборатория знаний, Интернет-университет информационных технологий, 2009.

2. Алексеев, В. Е. Графы и алгоритмы. Структуры данных. Модели вычислений / В.Е. Алексеев, В.А. Таланов. - М.: Интернет-университет информационных технологий, Бином. Лаборатория знаний, 2006.

3. Бабенко, М. А. Введение в теорию алгоритмов и структур данных. / М.А. Бабенко, М.В. Левин. - М.: МЦНМО, 2014.

4. Вирт, Н. Алгоритмы и структуры данных / Н. Вирт. - М.: Книга по Требованию, 2010.

5. Вирт, Никлаус Алгоритмы и структуры данных (+ CD-ROM) / Никлаус Вирт. - М.: ДМК Пресс, 2011.

6. Вирт, Никлаус Алгоритмы и структуры данных / Никлаус Вирт. - М.: ДМК Пресс, 2014.

7. Гагарина, Л. Г. Алгоритмы и структуры данных / Л.Г. Гагарина, В.Д. Колдаев. - М.: Финансы и статистика, Инфра-М, 2009.

Размещено на Allbest.ru


Подобные документы

  • Определение понятия структур данных. Рассмотрение информации и ее представления в памяти. Особенности непозиционных и позиционных систем счисления. Классификация структур данных, операции над ними. Структурность данных и технология программирования.

    презентация [359,3 K], добавлен 20.05.2015

  • Рассмотрение правил записи, способов ввода и вывода, использования функций обработки символьных данных в Pascal. Описание алгоритмизации и программирования файловых структур данных, проектирования структуры файла. Ознакомление с работой данных массива.

    курсовая работа [336,2 K], добавлен 27.06.2015

  • Проблемы с организацией данных. Определение и классификация динамических структур данных. Линейные односвязные, двухсвязные, кольцевые списки. Очередь, стеки. Описание основных типов данных и функции для работы с ними. Листинг программы, пример ее работы.

    контрольная работа [290,6 K], добавлен 17.07.2012

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

    контрольная работа [65,8 K], добавлен 14.11.2010

  • Формы представляемой информации. Основные типы используемой модели данных. Уровни информационных процессов. Поиск информации и поиск данных. Сетевое хранилище данных. Проблемы разработки и сопровождения хранилищ данных. Технологии обработки данных.

    лекция [15,5 K], добавлен 19.08.2013

  • Описание решения задачи, ее постановка, общий подход к решению. Представление исходных данных, условий задачи и целей ее решения. Составление алгоритма решения поставленной задачи. Написание программного обеспечения и тестирование конечного продукта.

    курсовая работа [1,1 M], добавлен 03.07.2011

  • Изучение применяемых в программировании и информатике структур данных, их спецификации и реализации, алгоритмов обработки данных и анализ этих алгоритмов. Программа определения среднего значения для увеличивающегося количества чисел заданного типа.

    контрольная работа [16,0 K], добавлен 19.03.2015

  • Выполнение операций, хранения, редактирования, систематизации данных. Рассмотрение подсистем разрабатываемой системы управления базами данных продуктового магазина. Разработка алгоритма функционирования системы и приложения для работы с базой данных.

    курсовая работа [399,1 K], добавлен 26.08.2019

  • Модели информационного процесса обработки данных. Классификация баз данных. Сеть архитектуры и технология клиент-сервер. Создание запросов к реляционным базам данных на SQL. Работа с электронными таблицами MS Excel: форматирование данных, вычисления.

    контрольная работа [17,8 K], добавлен 17.01.2010

  • Изучение особенностей информационного процесса обработки данных. Процессы, связанные с поиском, хранением, передачей, обработкой и использованием информации. Основные режимы обработки данных на ЭВМ. Организация обслуживания вычислительных задач.

    реферат [130,9 K], добавлен 28.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.