Отчет по лабораторной работе №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 руб.
Другие работы
Теплотехника ЮУрГАУ 2017 Задача 2 Водяной пар Вариант 14
Z24
: 5 декабря 2025
Водяной пар с начальным давлением р1, бар, и степенью сухости х1 расширяется до давления р2, бар, по: а) адиабате; б) изотерме.
Определить параметры: v, м³/кг; T, К; i, кДж/кг; s, кДж/(кг·К); u , кДж/кг, состояний в точках 1 и 2, а также изменение удельной внутренней энергии Δu, кДж/кг, удельную работу l, кДж/кг, и удельную теплоту процессов q, кДж/кг. Изобразить процессы на диаграммах в рv- и Ts- и is-координатах.
200 руб.
150 руб.
Экзаменационная работа по дисциплине: Математический анализ (часть 1). Билет №5
Roma967
: 28 мая 2016
Билет №5
1. Производная сложной функции. Производная обратной функции. Производная неявной функции. Производная параметрически заданной функции.
2. Вычислить производные функций (см. скрин)
3. Провести полное исследование функции (см. скрин) и построить её график.
4. Исследовать на экстремум функцию двух переменных (см. скрин)
5. Найти неопределенные интегралы (см. скрин)
500 руб.
Управление внешнеэкономической деятельностью. Контрольная работа
dbk
: 19 января 2014
Задание:
В процессе выполнения контрольной работы надо произвести оценку конкурентоспособности выбранных студентом товаров или услуг с использованием метода анализа иерархий (МАИ) в MS Excel.
Для выполнения контрольной работы студент выбирает не менее 3-х товаров или услуг, формирует перечень критериев, по которым будет производиться сравнение, сам выступает в роли экспертов при заполнении расчетных матриц.
По результатам выполненных расчетов делаются выводы относительно конкурентоспособности ра
40 руб.