Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
attachments_03-09-2012_10-20-12 / Связные списки,стеки, очереди.doc
Скачиваний:
32
Добавлен:
21.05.2015
Размер:
256 Кб
Скачать

Задачи.

  1. Реализовать функцию поиска элемента Е в односвязном списке L.

  2. Реализовать процедуру обмена местами двух элементов списка SwapEtems(Pl, P2: PElem), где P1 и Р2 — указатели на элементы, путем переустановки ссылок в списке.

  3. Подсчитать число максимальных элементов списка.

  4. Найти среднее значение элементов списка.

  5. Проверить, является ли список из целых чисел упорядоченным по возрастанию.

  6. Исключить из списка элементы, содержащие заданное число.

  7. В списке A хранится информация о людях (фамилия, имя, отчество, профессия). Имеется список В, содержащий перечень профессий. Удалить из списка А тех людей, чья профессия не указана в списке В.

  8. Дан список штучных товаров, хранящихся на складе (наименование, цена). В списке могут присутствовать одинаковые товары. Необходимо:

  1. составить прайс-лист на товары (список, содержащий перечень различных товаров и цен на них);

  2. вычислить среднюю цену на каждый товар;

  3. вывести перечень наименований товаров, чья цена ближе всего к средней.

  1. Имеется N городов. Задан список пар городов (i,j), между которыми существует прямая дорога. Напечатать список городов, которые напрямую сообщаются с более чем тремя городами.

  2. Дан список слов. Из каждой группы подряд идущих одинаковых слов оставить только одно.

  3. Дан текстовый файл. Распечатать слова, имеющие максимальную длину.

  4. Дан текстовый файл. Провести частотный анализ слов.

  5. Дан текстовый файл с целыми числами. Распечатать сколько какое число встречается раз.

  6. Дан список вещественных чисел. Проверить, упорядочены ли числа по убыванию.

  7. Дан список вещественных чисел. Для каждого элемента списка напечатать число отрицательных элементов, следующих за ним.

  8. Дан список вещественных чисел. Проверить, образуют ли числа, хранящиеся в списке арифметическую прогрессию.

  9. Дан список вещественных чисел. Проверить, образуют ли числа, хранящиеся в списке геометрическую прогрессию.

  10. Описать процедуру, которая вставляет в список, элементы которого упорядочены по неубыванию, новый элемент так, чтобы сохранялась упорядоченность.

  11. Написать процедуру слияния двух упорядоченных списков из целых чисел в один упорядоченный список.

  12. Даны два стека. Используя операции Извлечь, Занести и функцию ПустЛиСтек подсчитать общее число элементов в стеках. В качестве вспомогательных структур разрешается использование переменных целых типов. Алгоритм должен предусматривать восстановление исходного расположения элементов в стеках.

  13. Распечатать возрастающие серии последовательности целых чисел в обратном порядке (серия — упорядоченная подпоследовательность максимальной длины).

  14. Дан текстовый файл А. Переписать его содержимое в файл В, удалив при этом слова, длина которых меньше заданной.

  15. Дан текстовый файл А. Переписать его содержимое в файл В, перенося при этом в конец каждой строки все входящие в нее знаки препинания.

  16. Даны две очереди X и Y, содержащие вещественные числа. Из каждой очереди одновременно извлекается по одному числу, х и у соответственно. Если х < у, то число (х + у) помещается в конец очереди X, иначе число (х–у) помещается в конец очереди Y. Необходимо определить число шагов, через которое одна из очередей станет пустой.

  17. В текстовом файле записаны целые числа. Распечатать сначала положительные числа, а потом отрицательные (порядок следования должен остаться без изменения).

  18. В текстовом файле записаны целые числа. Распечатать сначала положительные числа, а потом отрицательные (порядок следования должен стать обратным)

  19. Проверить правильность расстановки скобок в арифметическом выражении с использованием стека. По правилам записи арифметических выражений первой должна закрываться последняя открывающая скобка, и число открывающих и закрывающих скобок должно совпадать. В выражениях используются круглые, квадратные и фигурные скобки. Предусмотреть ошибки: несоответствие скобок (a*k[d-l}) и непарные скобки (несоответствие числа открывающих и закрывающих)