На этом шаге мы приведем задачи для самостоятельного решения.
Например, сумма делителей числа 220 равна
1+2+4+5+10+11+20+22+44+55+110=284,
1*. Используя обход в глубину, определите количество вершин в связном неориентированном графе.
2*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются чётными.
3*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются трёхзначными.
4*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются палиндромическими.
5*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются простыми.
6*. Перенумеруйте вершины связного неориентированного графа в порядке обхода в глубину.
7*. (По [1, с.165]) Перенумеруйте вершины связного неориентированного графа в порядке обхода в глубину и вычислите среднюю плотность графа. Можно ли оба эти действия выполнить за один обход графа?
8*. Напишите функцию, определяющую в связном неориентированном графе длину пути из одной вершины в другую с помощью обхода в глубину.
9. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются совершенными.
10. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в глубину, сколько из них являются дружественными.
11. Используйте обход связного неориентированного графа в глубину для определения всех вершин, находящихся на фиксированном расстоянии D от данной вершины.
0*. Дайте название методу, отличающемуся от поиска в ширину на связном неориентированном графе только тем, что вновь достигнутая вершина помещается не в очередь, а в стек.
1*. Используя обход в ширину, определите количество вершин в связном неориентированном графе.
2*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются чётными.
3*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются трёхзначными.
4*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются палиндромическими.
5*. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются простыми.
6*. Перенумеруйте вершины связного неориентированного графа в порядке обхода в ширину.
7*. (По [1, с.165]) Перенумеруйте вершины неориентированного графа в порядке обхода в ширину и вычислите среднюю плотность графа. Можно ли оба эти действия выполнить за один обход графа?
8*. Напишите функцию, определяющую в связном неориентированном графе длину пути из одной вершины в другую с помощью обхода в ширину.
9. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются совершенными.
10. В вершинах связного неориентированного графа "хранятся" положительные целые числа. Подсчитайте с помощью обхода графа в ширину, сколько из них являются дружественными.
11. Используйте обход связного неориентированного графа в ширину для определения всех вершин, находящихся на фиксированном расстоянии D от данной вершины.
1. Покажите на нескольких графах, что в связном графе имеется единственный связный компонент, совпадающая с самим графом.
2. Реализуйте алгоритм проверки связности графа, изложенный в монографии [2, с.198-205].
1*. Реализуйте алгоритм превращения заданного графа в дерево.
Со следующего шага мы начнем рассматривать классы и их экземпляры.