2019-gate-computer-science-and-it-practice.pdf/Q17-alg5 — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) (Новая страница: « == Вопрос: Q17-alg5-31d68c == <blockquote> Вопрос из «Algorithms Test 5» где-то со страницы 243. Тут вставьте пер…») |
StasFomin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | |||
== Вопрос: Q17-alg5-31d68c == | == Вопрос: Q17-alg5-31d68c == | ||
+ | Рассмотрим следующие утверждения об алгоритме [https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%B8%D1%81%D0%BA_%D0%B2_%D0%B3%D0%BB%D1%83%D0%B1%D0%B8%D0%BD%D1%83 обхода графа в глубину]: | ||
− | + | ;I: Предположим, мы запускаем DFS на неориентированном графе и находим ровно 15 обратных ребер. Тогда граф гарантированно будет иметь по крайней мере один цикл. | |
− | + | ;II: DFS на ориентированном графе с ''n'' вершинами и, по крайней мере, ''n'' ребрами гарантированно найдет хотя бы одно обратное ребро. | |
− | + | Какие из данных утверждений верны? | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
=== Ответы === | === Ответы === | ||
− | + | * Правильный ответ: Только I | |
− | + | * Только II | |
− | + | * Оба | |
− | * Правильный ответ: | + | * Ни одно |
− | * | + | |
− | * | + | |
− | * | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
=== Объяснение === | === Объяснение === | ||
− | + | Если в графе есть обратные ребра, то в нем есть цикл. | |
− | + | ||
− | + | Второе утверждение неверно, так как можно привести пример ориентированного графа с тремя вершинами, степени вершин которого равны 2, 1 и 0. В таком случае обратных ребер найдено не будет. | |
− | + | <graph> | |
− | + | digraph G{ | |
− | + | a -> b | |
+ | a -> c | ||
+ | b -> c | ||
+ | } | ||
+ | </graph> | ||
− | </ | + | DFS с вершины «a» не найдет ни одного обратного ребра: |
+ | <graph> | ||
+ | digraph G{ | ||
+ | a -> b -> c | ||
+ | } | ||
+ | </graph> | ||
− | {{ | + | {{cstest-source|2019-gate-computer-science-and-it-practice.pdf|244|17}} |
− | {{ | + | {{question-ok|[[Участник:StasFomin|StasFomin]] 16:17, 25 декабря 2024 (UTC)}} |
− | [[ | + | [[Категория:Алгоритмы на графах]] |
Версия 16:17, 25 декабря 2024
Вопрос: Q17-alg5-31d68c
Рассмотрим следующие утверждения об алгоритме обхода графа в глубину:
- I
- Предположим, мы запускаем DFS на неориентированном графе и находим ровно 15 обратных ребер. Тогда граф гарантированно будет иметь по крайней мере один цикл.
- II
- DFS на ориентированном графе с n вершинами и, по крайней мере, n ребрами гарантированно найдет хотя бы одно обратное ребро.
Какие из данных утверждений верны?
Ответы
- Правильный ответ: Только I
- Только II
- Оба
- Ни одно
Объяснение
Если в графе есть обратные ребра, то в нем есть цикл.
Второе утверждение неверно, так как можно привести пример ориентированного графа с тремя вершинами, степени вершин которого равны 2, 1 и 0. В таком случае обратных ребер найдено не будет.
DFS с вершины «a» не найдет ни одного обратного ребра:
Исходники — вопрос 17 на 244 странице книги «2019-gate-computer-science-and-it-practice.pdf»