- Реализовать рекурсивный алгоритм проверки правильности расстановки скобок. Скобки могут быть чётырёх типов: (), [], {}, <>. Строка подаётся из файла, результат выводится на экран и сохраняется в файл с именем 1.txt.
- Реализовать рекурсивный алгоритм, печатающий все подмножества множества {1, 2, . . . , N}. N задаётся с клавиатуры, результат выводится на экран и сохраняется в файл с именем 2-n.txt, где n — используемое значение.
- Разложить введённое натуральное число на слагаемые всеми возможными различными способами. Число задаётся с клавиатуры, результат выводится на экран и сохраняется в файл с именем 3-n.txt, где n — используемое значение.
- Дана строка, состоящая из 1 <= N <= 10 различных символов. Требуется вывести все перестановки символов данной строки в алфавитном порядке. Строка подаётся из файла, результат выводится на экран и сохраняется в файл с именем 4.txt.
- Лесенкой называется набор кубиков, в котором каждый более верхний слой содержит кубиков меньше, чем предыдущий. Требуется написать программу, вычисляющую число лесенок, которое можно построить из Nкубиков. N задаётся случайным образом, результат выводится на экран и сохраняется в файл с именем 5.txt
- Написать программу, в которой можно оперировать бинарным деревом, добавляя и удаляя из него элементы. Должна быть реализована возможность прочтения скобочной записи и воссоздания дерева по ней, а также печать текущего дерева в виде скобочной записи на экран/в файл. Так же должна быть возможность создания рандомного дерева.
- Написать программу в которой можно оперировать очередью, добавляя и удаляя из неё элементы. В очередь подаются числа. После подачи нуля очередь постепенно освобождается, печатая только чётные числа в порядке их ввода в неё.
- Написать программу в которой можно оперировать двунаправленным списком, добавляя, удаляя, сортируя и печатая элементы. Необходимо реализовать возможности выбора способа сортировки (вставки/выбор/пузырёк) и направления (по возрастанию/убыванию).
- Написать программу в которой можно оперировать стеком, добавляя и удаляя из него элементы. В программу в постфиксной форме вводится арифметическое выражение. Посчитать его с помощью стека.
- Написать программу в которой можно оперировать циклическим списком, добавляя и удаляя из него элементы. Требуется решить следующую задачу: даны n узлов с номерами от 1 до n. Начиная с первого узла мы идём по циклу и удаляем каждый m-ый узел и пишем его номер. Останавливаемся, когда остаётся один узел. Его номер выводим на отдельной строке.