Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Динамические структуры - задания и пример.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
83 Кб
Скачать
☆
  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. Проверка списка на упорядоченность его элементов. Функция должна возвращать одно из трех значений: 0 — если элементы не упорядочены, 1 — если элементы упорядочены по возрастанию, 2 — если элементы упорядочены по убыванию.

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

Вариант 7

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

  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 раз, то возвращается NULL.

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

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

Вариант 8

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