Читайте также: |
|
Вводится строка из строчных латинских букв, слова разделены пробелами, признак конца ввода - точка. При выполнении задания предложение организовать в виде двухсвязного списка слов (не кольца).
Программа должна содержать функции формирования исходного списка, вывода списка до и после модификации и реализации непосредственно варианта задания.
ВАРИАНТЫ
Номер варианта | Постановка задачи |
Переставить все элементы списка со словами четной длины в начало списка | |
Удалить из списка слова, начинающиеся с гласной буквы. | |
Перед словом с максимальной длиной вставить его копию. | |
После максимального слова (в лексикографическом смысле) вставить элемент с его инверсией. | |
Перед N-ым элементом списка вставить слово максимальной длины. | |
Удалить из списка все слова с заданной длиной | |
Удалить из списка элементы, равные максимальному слову (в лексикографическом смысле). | |
Удалить из списка слов все последующие вхождения первого слова. | |
Удалить из списка слов все предыдущие вхождения последнего слова. | |
Оставить в списке слов только первые вхождения каждого слова. | |
Переставить все элементы списка со словами четной длины в конец списка | |
После слова с минимальной длиной вставить его копию. | |
Перед минимальным словом (в лексикографическом смысле) вставить элемент с его инверсией. | |
Удалить из списка все однобуквенные слова. | |
После N-ого элемента списка вставить слово минимальной длины. | |
Для каждого слова списка, содержащего дефис, разделить его на два элемента: до и после дефиса. | |
Разделить список на два – до заданного слова и после. | |
Разделить список на два – до заданного N-го элемента и после. |
ЛАБОРАТОРНАЯ РАБОТА 14. УКАЗАТЕЛИ. ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ. ОБРАБОТКА БИНАРНЫХ ДЕРЕВЬЕВ
ЗАДАНИЕ
Дан текст, хранящийся в файле. Текст состоит из слов, разделенных пробелами – длина слова не более 20 букв. Решить простейшую задачу создания конкорданса. Реализовать функцию создания упорядоченного (в алфавитном порядке) бинарного дерева, где в узлах хранятся слова и количество их появления в указанном тексте. Реализовать различные способы обхода дерева (в глубину, в обратном порядке и т.д.) для вывода элементов на экран. Реализовать задачу, приведенную в варианте, в виде отдельной рекурсивной функции.
ВАРИАНТЫ
Номер варианта | Постановка задачи |
Найти количество листьев в дереве. | |
Найти количество слов в тексте, начинающихся с заданной буквы. | |
Найти слово с максимальной повторяемостью в тексте (если их несколько – любое) | |
Найти глубину дерева | |
Вычислить количество различных слов в тексте | |
Определить, встречается ли заданное слово в тексте, если – да, то сколько раз. | |
Найти количество слов на N-ом уровне дерева. | |
Найти длину (число ветвей) пути от корня до ближайшей вершины с заданным словом | |
Найти длину (число ветвей) пути от корня до ближайшей вершины с заданным количеством появлений слова в тексте | |
Найти количество внутренних узлов в дереве. | |
Найти слово с максимальной повторяемостью в тексте (если их несколько – любое) | |
Найти сколько слов с заданной повторяемостью в тексте | |
Определить, какое поддерево - левое или правое - содержит больше узлов[1] | |
Определить, какое поддерево - левое или правое - содержит больше слов1 | |
Найти минимальное слово (в смысле лексикографического порядка) и его повторяемость в тексте | |
Найти в тексте слово с максимальной длиной (если их несколько – любое) и его повторяемость | |
Найти максимальное слово (в смысле лексикографического порядка) и его повторяемость в тексте | |
Найти в тексте слово с минимальной длиной (если их несколько – любое) и его повторяемость |
[1] В этом задании рекурсивно реализуется вспомогательная функция
Дата добавления: 2015-02-16; просмотров: 108 | Поможем написать вашу работу | Нарушение авторских прав |