Ed
há 3 semanas
Para entender como a busca em largura (BFS) garante a descoberta dos caminhos mínimos em um grafo não ponderado, precisamos analisar como o algoritmo funciona. A BFS explora os vértices em níveis, começando pelo vértice inicial e visitando todos os vértices adjacentes a ele antes de avançar para os vértices que estão mais distantes. Isso significa que, ao visitar um vértice, todos os vértices a uma mesma distância do vértice inicial são visitados antes de se mover para os vértices a uma distância maior. Agora, vamos analisar as alternativas: a) Explorando primeiro os vértices com maior grau de conectividade. - Isso não é verdade para a BFS, que não prioriza vértices com maior grau. b) Utilizando uma pilha para armazenar os vértices a serem visitados. - A BFS utiliza uma fila (queue), não uma pilha. Essa é uma característica da busca em profundidade (DFS). c) Implementando um heap para manter a ordem de visitação dos vértices. - Isso não se aplica à BFS, que não utiliza heaps. d) Visitando vértices em ordem crescente de distância. - Esta é a descrição correta do funcionamento da BFS, pois ela visita todos os vértices a uma mesma distância antes de avançar para os mais distantes. e) Utilizando um algoritmo recursivo para explorar todas as arestas. - A BFS não é um algoritmo recursivo; ela é iterativa e utiliza uma fila. Portanto, a alternativa correta que indica como a BFS garante a descoberta dos caminhos mínimos a partir de um vértice inicial é: d) Visitando vértices em ordem crescente de distância.