Отчет по лабораторной работе №2 Полустатические структуры данных. Очереди. По дисциплине: Структуры и алгоритмы обработки данных Вариант: 02
Состав работы
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Задание к лабораторной работе
Записать последовательность цифр в очередь в порядке возрастания. Ввести еще одно число и поместить его в очередь, не нарушая принципа упорядоченности элементов.
Схема решения.
Очередь реализуем двумя способами.
1. Очередь на базе массива.
Элементы очереди будем хранить в кольцевом массиве. Индекс первого и последнего элемента – как отдельные переменные head и tail. При этом head будет указывать на индекс первого элемента очереди, а tail – на индекс свободного места для вставки нового элемента. При извлечении элемента head увеличивается на единицу, при добавлении элемента новый элемент добавляется на место с индексом tail, а tail увеличивается на единицу. Увеличения на единицу производятся с учётом того, что массив кольцевой.
2. Очередь на базе линейного односвязного списка.
Будем хранить два указателя – на первый и последний элемент очереди. Указатели идут в порядке от первого к последнему элементу. При извлечении элемента мы можем легко получить следующий по указателю, при вставке мы ставим указатель с последнего элемента на новый и в качестве указателя на последний элемент храним указатель на новый только что добавленный элемент.
Задачу будем решать таким способом.
Нужно разделить список на две части (одна из них может быть пустой) и между ними вставить новый элемент. Учитывая, что список чисел у нас храниться в очереди, то будем делать так:
- если можно вставить новый элемент сразу в конец, то вставляем его и задача решена.
- если в конец вставить нельзя, то извлекаем элемент из очереди и заново его в очередь вставляем до тех пор, пока в конец нельзя будет вставить новый элемент. Как только можно вставить новый элемент, то вставляем его и извлекаем из очереди оставшийся кусок (поэлементно, конечно), который нарушает упорядоченность и вставляем его в очередь заново. Таким образом мы как бы произвели циклический сдвиг элементов очереди и за одно вставили новый элемент на нужное место.
При этом для решения задачи потребуются ещё две функции, возвращающие первый и последний элемент очереди, не извлекая их.
Записать последовательность цифр в очередь в порядке возрастания. Ввести еще одно число и поместить его в очередь, не нарушая принципа упорядоченности элементов.
Схема решения.
Очередь реализуем двумя способами.
1. Очередь на базе массива.
Элементы очереди будем хранить в кольцевом массиве. Индекс первого и последнего элемента – как отдельные переменные head и tail. При этом head будет указывать на индекс первого элемента очереди, а tail – на индекс свободного места для вставки нового элемента. При извлечении элемента head увеличивается на единицу, при добавлении элемента новый элемент добавляется на место с индексом tail, а tail увеличивается на единицу. Увеличения на единицу производятся с учётом того, что массив кольцевой.
2. Очередь на базе линейного односвязного списка.
Будем хранить два указателя – на первый и последний элемент очереди. Указатели идут в порядке от первого к последнему элементу. При извлечении элемента мы можем легко получить следующий по указателю, при вставке мы ставим указатель с последнего элемента на новый и в качестве указателя на последний элемент храним указатель на новый только что добавленный элемент.
Задачу будем решать таким способом.
Нужно разделить список на две части (одна из них может быть пустой) и между ними вставить новый элемент. Учитывая, что список чисел у нас храниться в очереди, то будем делать так:
- если можно вставить новый элемент сразу в конец, то вставляем его и задача решена.
- если в конец вставить нельзя, то извлекаем элемент из очереди и заново его в очередь вставляем до тех пор, пока в конец нельзя будет вставить новый элемент. Как только можно вставить новый элемент, то вставляем его и извлекаем из очереди оставшийся кусок (поэлементно, конечно), который нарушает упорядоченность и вставляем его в очередь заново. Таким образом мы как бы произвели циклический сдвиг элементов очереди и за одно вставили новый элемент на нужное место.
При этом для решения задачи потребуются ещё две функции, возвращающие первый и последний элемент очереди, не извлекая их.
Дополнительная информация
В архиве 3 файла: *.CPP ; *.EXE ; Отчет.
Уважаемый слушатель, дистанционного обучения,
Оценена Ваша работа по предмету: Структуры и алгоритмы обработки данных на ЭВМ*
Вид работы: Лабораторная работа 2
Оценка:Зачет
Дата оценки: 19.09.2011
Рецензия:Уважаемый ...................................,
Лебеденко Людмила Федоровна
Уважаемый слушатель, дистанционного обучения,
Оценена Ваша работа по предмету: Структуры и алгоритмы обработки данных на ЭВМ*
Вид работы: Лабораторная работа 2
Оценка:Зачет
Дата оценки: 19.09.2011
Рецензия:Уважаемый ...................................,
Лебеденко Людмила Федоровна
Похожие материалы
Структуры и алгоритмы обработки данных. Вариант №4
Efimenko250793
: 6 декабря 2013
1Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества, определить на каждом шаге в методе прямого выбора номера перемещаемых элементов.
2.
Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества, определить на каждом шаге в методе шейкерной сортировки левую и правую границы сортируемой части массива (L и R).
3.
Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества провести 3-сортировку (в методе Шелла).
4.
Используя в качестве м
300 руб.
Зачет по дисциплине: Структуры и алгоритмы обработки данных. Вариант №8
Nikolay80
: 10 марта 2015
Зачет по дисциплине: Структуры и алгоритмы обработки данных. Вариант №8
Сформулируйте задачу сортировки последовательностей.
50 руб.
Зачет по дисциплине: Структуры и алгоритмы обработки данных. Вариант №7
Jack
: 1 декабря 2014
Зачет по дисциплине Структуры и алгоритмы обработки данных.
Вопрос к зачету:
Сформулируйте задачу сортировки последовательностей.
60 руб.
Зачет по дисциплине: Структуры и алгоритмы обработки данных. Вариант №02
Jack
: 4 сентября 2014
Зачет по дисциплине: Структуры и алгоритмы обработки данных. Вариант №02
Вопрос к зачету:
В чем смысл операции слияния серий?
100 руб.
Курсовая работа по дисциплине: Структуры и алгоритмы обработки данных. Вариант №07.
teacher-sib
: 27 ноября 2016
Постановка задачи
Хранящуюся в файле базу данных загрузить в оперативную память компьютера и построить дерево поиска заданного типа, упорядочивающее данные сначала по первому полю, затем по второму и т.д.
Провести поиск по ключу в построенном дереве поиска. В качестве ключа использовать три буквы ФИО студента. (Например, ключ поиска для Сидорова Ивана Кузьмича – СИК). Из записей с одинаковым ключом сформировать очередь. Вывести содержимое очереди.
При выполнении задания главное внимание след
300 руб.
КУРСОВАЯ РАБОТА по дисциплине « структуры и алгоритмы обработки данных». Вариант №13.
freelancer
: 31 августа 2016
Постановка задачи
Хранящуюся в файле базу данных загрузить в оперативную память компьютера и построить дерево поиска заданного типа, упорядочивающее данные сначала по первому полю, затем по второму и т.д.
Провести поиск по ключу в построенном дереве поиска. В качестве ключа использовать три буквы ФИО студента. (Например, ключ поиска для Сидорова Ивана Кузьмича – СИК). Из записей с одинаковым ключом сформировать очередь. Вывести содержимое очереди.
При выполнении задания главное внимание сле
50 руб.
Контрольная работа по дисциплине: Структуры и алгоритмы обработки данных. Вариант 05.
freelancer
: 15 августа 2016
Контрольная работа
Задача 1
Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества, определить на каждом шаге в методе прямого выбора номера перемещаемых элементов.
Задача 2
Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества, определить на каждом шаге в методе шейкерной сортировки левую и правую границы сортируемой части массива (L и R).
Задача 3
Используя в качестве массива набор из 8 букв своих фамилии, имени, отчества провести 3-сортировку (в
50 руб.
Лабороторные работы по дисциплине: Структуры и алгоритмы обработки данных. Вариант №1
Nicola90
: 28 апреля 2013
Лабораторная работа №1
Тема: Принцип инкапсуляции. Описание класса.
Задание:
Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
Лабораторная работа №2
Тема: Продолжение темы лаб. работы №1.
Задание:
Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля). Добавить методы дв
300 руб.
Другие работы
Социальная психология
tish1983
: 12 июня 2021
Практическое занятие 1. Тема 4. Общие проблемы малой группы. Динамические процессы в малой группе. Развитие малой группы.
Практическое занятие 2. Тема 5. Психология больших социальных групп.
300 руб.
Кондуктор универсальный для сверления отверстий в осях 27-00 СБ
HelpStud
: 3 мая 2018
Задание №27 из альбома заданий для выполнения сборочных чертежей Л.В. Борковская, Е.А. Гулянская, К.И. Зыкунова под ред. В.В. Рассохина.
Устройство и работа кондуктора. Кондуктор служит для сверления в осях отверстий (рис. 1). Он состоит из отдельных узлов: узел плиты 8; узел вала-шестерни 2; узел призмы 17. Кондуктор собирают в следующем порядке.Сначала собирают узел плиты 8. В отверстие ф14 плиты запрессовывают втулку 24; в отверстия ф16 забивают сверху до упора колонки 9; в отверстие ф13 сни
220 руб.
Гидравлика Пермская ГСХА Задача 8 Вариант 1
Z24
: 3 ноября 2025
Определить абсолютное гидростатическое давление в точке A закрытого резервуара, заполненного водой, если при нормальном атмосферном давлении высота столба ртути в трубке дифманометра hрт, а линия раздела между ртутью и водой расположена ниже точки B на величину h1, точка B выше точке A на величину h2.
150 руб.
Валютно-таможенный контроль коммерческих банков
Aronitue9
: 12 января 2012
СОДЕРЖАНИЕ:
ВВЕДЕНИЕ 3
ГЛАВА 1. СОВРЕМЕННОЕ СОСТОЯНИЕ ЗАКОНОДАТЕЛЬНОЙ БАЗЫ О ВАЛЮТНОМ РЕГУЛИРОВАНИИ И ВАЛЮТНОМ КОНТРОЛЕ 6
1.1 Виды валютных операций, виды валют и валютных ценностей,
применяемых РФ 6
1.2 Правила открытия и ведения валютных счетов в уполномоченных банках Российской Федерации 19
1.3 Правила ведения валютных операций. Валютные ограничения и формирование валютных резервов 27
1.4 Правила проведения резидентами валютно-кредитных операций 33
ГЛАВА 2. АНАЛИЗ ОСНОВНЫХ ЭКОНОМИЧЕСКИХ ОП
20 руб.