Студопедия — АТД и структура данных
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

АТД и структура данных






Assert

Assert- заголовочный файл стандартной библиотеки языка программирования С#, в котором объявляется макрос препроцессора языка С assert (). Данный макрос реализует исключение, которое может использоваться для проверки сделанных программой вычислений.

- инструмент отладки: -взаимодействует с пользователем

-проверка отсутствует в «продуктовом коде»

-дополнительное документирование кода.

- проверяет исходное выражение, если false- кид. исключение

- контроль внутренних деталей реализации

- может дублировать исключения

Девид. Assert (bool_expr, message)

Ассоциативный массив и варианты реализации

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

(«быстрый» поиск значения по ключу)

Insert (ключ, значение)

Find (ключ)

Remove (ключ)

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

- Операции: создание, уничтожение, добавление элемента, удаление элемента, поверка на пустоту, получение значения по ключу

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

3.Абстрактный Тип Данных «множество» и варианты реализации

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

- Данные типа «множество» позволяют хранить ограниченное число значений определенного типа без определенного порядка.

-динамическая структура данных

- набор уникальных элементов

- «быстрая» проверка наличия значения

- Операторы: объединение, пересечение, заполнение, разность и др.

-Операции: создание, уничтожение, добавление элемента, удаление элемента, проверка на пустоту, проверка элемента на вхождение, получение размера

- Реализация: дерево, хеш-таблица, битовый массив, динамический массив (сортированный), список (сортированный)

4. АТД “cтек” и варианты реализации

- динамическая структура данных

-упорядоченный набор элементов

- LIFO (last in first out) -добавление и удаление элементов с одного конца, называется вершиной стека

-Операции: создание, уничтожение, добавление элемента, удаление элемента, проверка на пустоту, получение значения верхнего элемента.

- Стек реализации: Динамический массив, Линейный список

- Стек (динамический массив): - физический и логический размер

- добавление в «конец»

- удаление из «конца»

- проверка логического размера

- доступ к последнему элементу

- Стек (линейный список): - добавление в «голову»

- удаление из «головы»

- проверка наличия элементов

- доступ к голове

5.АТД «динамический массив» и варианты реализации Размеры этого массива может меняться.Массив- доступ к элементу по его индексуОперации: -создание, -уничтожение, -присваивание, -получение доступа к элементу по индексу, -получение размера -изменение размера 6.АТД «дэк» и варианты реализации, двусвязная очередь Добавление и извлечение элементов возможно с обоих концов

PushBack, popBack, pushFront, popFront

Реализация: -динамический массив(вставка и извлечение с концов)

-динамический массив (подвижные концы)

- список

7.АТД “массив фиксированного размера” и варианты реализации

Массив-тип данных для хранения других типов, хранилище для данных

- Имеется размер (типа хранимых данных, один тип) - получение размера

[ i ]-обращение к элементу

0,1,2..(size-1) size-размер

-Массив ---> фиксированный размер-нельзя изменить

---> динамический, можно менять размер

-Метод RESIZE меняет количество элементов, которые хранятся в массиве.

- Массивы фиксированного размера- встроенные

-Элементы массива в памяти расположены последовательно, что позволяет производить быстрый поиск по индексу

8.АТД “матрица” и варианты реализации Матрица- математический объект, допускающий запись и хранение однотипных данных /чисел и допускающий алгебраические операции (сложение, вычитание, умножение) между ними и другими подобными объектами.

-Операции: -создание,

-уничтожение,

-получение доступа к элементу по индексу (i,j),

-получение размера по измерению

- Алгебраические операции: -умножение на число

-сложение двух матриц

-умножение двух матриц

- Дополнительные операции: -изменение размера по измерению

-транспонирование

-вставка/удаление столбца/строки

-перестановка двух строк/столбцов

-умножение на число строки/столбца

-Способ представления: -приведенный индекс

-размеры

-массив элементов (i,j)->i*nCol + j

- массив строк столбцов

9.АТД “очередь с приоритетом” и варианты реализации

-пара <ключ, данные>

-порядок извлечения элементов определяется ключом, а не порядком добавления элемента в очередь

-реализация: -список (сортировка при вставке)

- дерево (сортирующее)

-массив (сортировка при вставке)

10.АТД “очередь” и варианты реализации

-динамическая структура данных

-упорядоченный набор элементов

- FIFO (first in first out)-добавление элементов с одного конца (хвоста) и удаления из другого (головы)

- Операции: -создание,

-уничтожение,

-добавление элемента

-удаление элемента

-проверка на пустоту

-получение значения верхнего элемента

11.АТД “полином” и варианты реализации

F(x)=a0*x0+a1*x1+…+anxn

аi-коэффициент

i- показатель степени (неотрицательное число)

х- переменная

- Степень многочлена-максимальный показатель степени (для 0 не определен)

- Операции:- создание (одночлен)

- уничтожение

- сложение полиномов

- умножение полиномов

-получение коэффициентов при заданном показателе степени

-вычисление значения

- Представление полинома: -массив an, n=0, N

-массив пар {n, an}

-список пар {n, an}

- Оптимизация: - выбор способа хранения в зависимости от разреженности и размерности

- для разреженных – хранение в упорядоченном виде (поддержание упорядочения при вставке членов)

12.АТД “число” и варианты реализации

Число – простейший и самый распространённый в программировании тип данных, представляет собой целочисленное значение (integer). Различают числа без знака и со знаком (+ или -). Количество чисел в машинном изображении множества целых чисел зависит от длины машинного слова, обычно выражаемой в битах. Например, при длине машинного слова 1 байт (8 бит) диапазон представимых целых чисел со знаком от -128 до 127. В беззнаковом формате байтововое представление числа будет от 0 до 255 (28 - 1). Если используется 32-разрядное машинное слово, то целое со знаком будет представлять значения от −2 147 483 648 (-231) до 2 147 483 647 (231−1); всего 1 0000 000016 (4 294 967 29610) возможных значений.-создание

-уничтожение

-Операции: 1.присваивание

2.сравнение = =;!=, <, <=, >=, >

3. арифметические операции -,+,/,*,-=,+=,/=,*=

4. Ввод и вывод:

-Встроенные типы: 1.Целые

2.Вещественные

-Классы: 1.Комплексные

2.Рациональные

3.«Длинная арифметика»

АТД и структура данных

-Абстрактный тип данных: -создание/уничтожение

-набор операций

-Структура данных: -реализация АТД

-способы организации в памяти

-Структура данных: массив, список, дерево, графа

14.базовые принципы ООП Для поддержки принципов объектно-ориентированного программирования все ООП-языки, включая C#, имеют три характерных черты: инкапсуляцию, полиморфизм и наследование.

-Абстракция

-Инкапсуляция: -сокрытие

-пользовательские типы данных

-Наследование

-Полиморфизм: -перегрузка функций

- «шаблонный» код (generics, templates)

-виртуальный вызов

-Инкапсуляция - свойство системы, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя

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

-Полиморфизм-свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта (перегрузка, шаблонный виртуальный вызов)

Встроенные типы -> способ хранения

-> способ интерпретации

-> допустимые операции

Простые -> порядковые-целочисленный, логический, символьный

-> вещественные

-> строковые







Дата добавления: 2015-09-04; просмотров: 1310. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

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

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия