Logo Passei Direto
Buscar

Algoritmos para Grafos

Lista de exercícios sobre caminho mínimo e algoritmos para grafos: cálculo do menor caminho a partir de Porto Alegre; unicidade de trajetos; questões de menor caminho em grafo ferroviário; diferença entre caminho mínimo e árvore geradora mínima; interpretação de códigos em matriz de adjacência.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL 
INSTITUTO DE INFORMÁTICA 
Bacharelado em Ciência da Computação e 
Engenharia da Computação 
INF 01203 – Estruturas de Dados 
Profa. Renata Galante (galante@inf.ufrgs.br ) 
Caminho Mínimo e Máximo e Algoritmos para Grafos 
Nomes:		 ___________________________________________________	
	 ___________________________________________________	
	 ___________________________________________________	
	
1	 –	 Considerando	 o	 algoritmo	 de	 “Caminho	 Mínimo”	 e	 considerando	 como	 ponto	 de	
partida	o	vértice	Porto	Alegre,	responda.	
	
Qual	 é	 o	 valor	 (somatório	 das	 distâncias)	 do	 menor	 caminho	 de	 Porto	 Alegre	 até	
Salvador?		_______________	
	
Em	que	ordem	cada	vértice	do	grafo	é	inserido	na	nuvem	para	a	realização	do	cálculo.		
	
_____________,	_____________,	_____________,	_____________,	_____________	
	
2	–	Dado	um	grafo	G	conexo	e	valorado	é	possível	afirmar	que	o	caminho	mais	 curto	é	
necessariamente	 único?	 Apresente	 argumentos	 a	 favor	 ou	 contra	 a	 afirmação	
apresentada.	
	
	
	
	
3	-		O	grafo	abaixo	ilustra	uma	ferrovia	com	7	pátios	e	suas	respectivas	distâncias:	
	
Para	fins	de	economia	de	custos,	os	carregamentos	devem	ser	transportados	na	ferrovia	
pelos	 menores	 caminhos	 existentes	 possíveis	 entre	 a	 sua	 origem	 e	 o	 seu	 destino.	
Considerando	que	na	notação	[x,y],	x	representa	o	pátio	de	origem	e	y	representa	o	pátio	
de	 destino,	 o	menor	 caminho	 (menor	 custo)	 entre	 x	 e	 y	 é	 apresentado	 por?	Assinale	 a	
alternativa	correta.		
	
(				)		[2,6]	−	Caminho:	2	4	5	3	6.			
(				)		[1,6]	−	Caminho:	1	3	6.			
(				)		[7,1]	−	Caminho:	7	5	3	1.		
(				)		[4,6]	−	Caminho:	4	1	3	6.			
(				)		[6,2]	−	Caminho:	6	3	1	4	2.	
	
	
4	–	Qual	é	a	principal	diferença	entre	o	algoritmo	de	caminho	mínimo	e	o	algoritmo	de	
árvore	geradora	mínima	(visto	na	última	aula).		
	
	
	
	
	
5	–	Explique	sucintamente	o	que	faz	o	código	a	seguir.	
int whatIsHappening(int grafo[num_v][num_v]){ 
 int i,k,c; 
 for(i=0;i<num_v;i++) { 
 c = 0; 
 for(k=0;k<num_v;k++) 
 if (grafo[i][k] == 1) 
 c++; 
 if (c == 0) return 1; 
 } 
 return 0; 
} 
	
	
	
	
6	–	Explique	sucintamente	o	que	faz	o	código	exibe	no	print.	
void whateverItIs (int grafo[num_v][num_v], int v){ 
 int i,respA=0,respB=0; 
 if (v < num_v ) 
 for(i=0;i<num_v;i++) { 
 respA = respA + grafo[v][i]; 
 respB = respB + grafo[i][v]; 
 } 
 printf("%d %d", respA, respB); 
}	
	
	
	
7	–	Explique	sucintamente	o	que	faz	o	código	a	seguir..	
int nothingToSay (int grafo[max+1][max+1], int i, int j) { 
int k, controle; 
 for (k=1; k<=max; k++){ 
 if (grafo[i][k] && (k!=j)) 
 controle = nothingToSay (grafo, k, j); 
 else 
 if (k==j) 
 return 1; 
 } 
 return controle; }

Mais conteúdos dessa disciplina