Отчет по лабораторной работе №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 руб.
Другие работы
Лабораторная работа №2. 1-й семестр. Физика.Определение удельного заряда электрона методом магнетрона. Вариант№9
58197
: 9 февраля 2012
1.Цель работы
Познакомиться с законами движения заряженных частиц в электрическом и магнитном полях, определить удельный заряд электрона с помощью цилиндрического магнетрона.
2.Основные теоретические сведения
Магнетроном называется электровакуумное устройство, в котором движение электронов происходит во взаимно перпендикулярных электрическом и магнитном полях. Магнетрон является источником электромагнитного излучения СВЧ диапазона.
В нашей работе магнетрон представляет собой радиолампу
15 руб.
Гидравлика и теплотехника ТОГУ Гидравлика Задача 1.3 Вариант 5
Z24
: 5 января 2026
На рис. 1.3 представлен водомер Вентури (участок трубы с плавным сужением потока), предназначенный для измерения расхода протекающей по трубопроводу жидкости.
Определить расход Q, если разность уровней в трубках дифференциального ртутного манометра h, диаметр трубы d1, диаметр горловины (сужения) d2. Потерями напора в водомере пренебречь.
150 руб.
Финансовый контроль и пути повышения его эффективности
evelin
: 8 января 2014
Содержание
Введение
1 Финансовый контроль
1.1 Понятие финансового контроля, его сущность
1.2 Виды, формы и методы проведения финансового контроля
2. Основные виды государственного и негосударственного финансового контроля и органы, его осуществляющие
2.1 Государственный и финансовый контроль
2.2 Негосударственный финансовый контроль
3. Контрольно-ревизионная деятельность Счетной палаты
3.1 Основные направления Счетной палаты в 2008 году
Заключение
Список использованной литературы
Вве
15 руб.
Реклама и свобода потребительского выбора
Elfa254
: 10 февраля 2014
В современной социологической науке проблема потребления вышла на передний план, потеснив традиционную для социологии заинтересованность процессами производства. Особенно актуальна она в западной социальной теории.
Отправной точкой для большинства авторов является тезис о том, что на определенном этапе своего развития капитализм порождает тенденцию к формированию общества потребления.
Более того, именно активное участие населения в процессе потребления создает благоприятные условия для эффективн
5 руб.