Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Динамические структуры - задания и пример.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
82.94 Кб
Скачать

Вариант1

Реализовать следующие функции для работы со стеком, представленным в виде односвязного списка:

  1. Получение элемента из вершины стека;

  2. Удаление элемента из вершины стека (элемент выталкивается из стека)

  3. Вставка значения х в вершину стека (элемент заталкивается в стек).

  4. Проверка стека на наличие в нем хотя бы одного элемента.

  5. Вывод всех элементов стека.

  6. Удаление всех элементов из стека (очистка стека).

  7. Проверка, есть ли в стеке хотя бы один элемент с заданным значением (значение задается в качестве параметра). Это логическая функция, которая должна возвращать 1, если есть или 0, если нет (true или false).

  8. Получение количества элементов в стеке.

  9. Определение минимального и максимального значения элементов стека.

Вариант2

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

  1. Получение первого элемента очереди;

  2. Удаление первого элемента очереди;

  3. Вставка значения х в конец очереди;

  4. Проверка очереди на наличие в ней хотя бы одного элемента.

  5. Вывод всех элементов очереди.

  6. Удаление всех элементов из очереди (очистка очереди).

  7. Проверка, есть ли в очереди хотя бы один элемент с заданным значением (значение задается в качестве параметра). Это логическая функция, которая должна возвращать 1, если есть или 0, если нет (true или false).

  8. Получение количества элементов в очереди.

  9. Определение минимального и максимального значения элементов очереди.

Вариант 3

Реализовать следующие функции для работы с односвязным списком:

  1. Вывод списка. Выводятся все элементы в соответствии с их порядком расположения в списке.

  2. Вставка элемента в заданную позицию списка. Эта функция вставляет значение х в заданную позицию р в списке, где p=1, 2,…n, n+1. Если список содержит элементы a1, a2, ..., аn, то после выполнения этой функции список будет иметь вид а1, а2, ..., ар-1, х, ар, ..., a n.. Если р принимает значение n+1, то будем иметь a1 , a2, , ..., an ,, х. Если в списке нет позиции р, то оставить список без изменения.

  3. Удаление элемента из заданной позиции списка. Эта функция удаляет элемент в позиции р списка, где p=1, 2,…n. Так, если список состоит из элементов a1, a2, ..., аn , то после выполнения этого оператора количество элементов уменьшится на единицу, а список будет иметь вид а1, а2, ...,, ap-1 ,ap+1, ..., аn. Оставить список без изменения, если в списке нет позиции р.

  4. Удаление всех элементов из списка.

  5. Поиск элемента в списке. Эта функция возвращает позицию p искомого значения х в списке. Если в списке объект x встречается несколько раз, то возвращается позиция первого от начала списка значения х. Если х нет в списке, то возвращается 0.

  6. Получение элемента по его позиции в списке. Предусмотреть ситуацию, когда заданной позиции в списке нет (любым способом).

Вариант 4

Реализовать следующие функции для работы с односвязным списком:

  1. Вывод списка. Выводятся все элементы в соответствии с их порядком расположения в списке.

  2. Вставка элемента в заданную позицию списка. Эта функция вставляет значение х в заданную позицию р в списке, где p=1, 2,…n, n+1. Если список содержит элементы a1, a2, ..., аn, то после выполнения этой функции список будет иметь вид а1, а2, ..., ар-1, х, ар, ..., a n.. Если р принимает значение n+1, то будем иметь a1 , a2, , ..., an ,, х. Если в списке нет позиции р, то оставить список без изменения.

  3. Удаление элемента из заданной позиции списка. Эта функция удаляет элемент в позиции р списка, где p=1, 2,…n. Так, если список состоит из элементов a1, a2, ..., аn , то после выполнения этого оператора количество элементов уменьшится на единицу, а список будет иметь вид а1, а2, ...,, ap-1 ,ap+1, ..., аn. Оставить список без изменения, если в списке нет позиции р.

  4. Удаление всех элементов из списка.

  5. Поиск элемента в списке. Эта функция возвращает позицию искомого значения х в списке, в качестве параметра задается также номер вхождения m. Если объекта х нет в списке или он встречается меньше чем m раз, то возвращается 0.

  6. Объединение двух списков. В результате второй из списков должен расположиться после последнего элемента первого списка, т.е. первый список должен увеличиться в размерах.

  7. Проверка списка на наличие в нем хотя бы одного элемента.

Вариант 5

Реализовать следующие функции для работы с односвязным списком:

  1. Вывод списка. Выводятся все элементы в соответствии с их порядком расположения в списке.

  2. Вставка элемента в заданную позицию списка. Эта функция вставляет значение х в заданную позицию р в списке, где p=1, 2,…n, n+1. Если список содержит элементы a1, a2, ..., аn, то после выполнения этой функции список будет иметь вид а1, а2, ..., ар-1, х, ар, ..., a n.. Если р принимает значение n+1, то будем иметь a1 , a2, , ..., an ,, х. Если в списке нет позиции р, то оставить список без изменения.

  3. Удаление элемента из заданной позиции списка. Этот оператор удаляет элемент в позиции р списка, где p=1, 2,…n. Так, если список состоит из элементов a1, a2, ..., аn , то после выполнения этого оператора количество элементов уменьшится на единицу, а список будет иметь вид а1, а2, ...,, ap-1 ,ap+1, ..., аn. Оставить список без изменения, если в списке нет позиции р.

  4. Удаление всех элементов из списка.

  5. Поиск максимального элемента в списке. Эта функция возвращает значение и позицию p максимального элемента в списке. Если в списке несколько одинаковых максимальных элементов, то возвратить позицию первого из них.

  6. Перестановка элементов с позициями p1 и p2. Если хотя бы одной из позиций нет в списке, то оставить список без изменения.

Вариант 6

Реализовать следующие функции для работы с односвязным списком: