SlideShare uma empresa Scribd logo
1 de 12
Técnicas de Programación I UNIVERSIDAD PRIVADA SAN PEDRO TEMA : TRABAJO DE INVESTIGACION DE GRAFOS ,[object Object],[object Object],[object Object],[object Object],[object Object],ESCUELA DE ING. INFORMATICA Y DE SISTEMAS FACULTAD DE INGENIERIA
GRAFOS: Estructura de datos no lineal (Programación no numérica) que permiten representar los diferentes tipos de relaciones entre objetos G=(N,A) Supongamos: N={1,2,3,4,5} Y la siguiente relación en A: R={(1,2);(2,3);(3,4);(4,5)} En forma de grafo sería: 1 2 3 4 5
TIPOS DE GRAFOS: ,[object Object],* * ,[object Object],* * ,[object Object]
Búsqueda en Profundidad: Se implementa de forma recursiva, aunque también puede realizarse con una pila. Se utiliza un array “val” para almacenar el orden en que fueron explorados los vértices. int  id=0; int  val[V];  void  buscar()  { int  i; for  (i=1; i<=V; i++)  val[i]=0; for  (i=1; i<=V; i++)  if  (val[i]==0)  visitar(i);  } void  visitar(int i) // matriz de adyacencia  {  int  t; val[i]=++id; for  (t=1; t<=V; t++)  if  (a[i][t] &&  val[t]==0)  visitar(t); } void  visitar(int i) // listas de adyacencia  {  nodo  *t;  val[i]=++id;  for  (t=a[i]; t!=z; t=t->sig)  if  (val[t->v]==0) visitar(t->v); }
Representación de Grafos:  Una característica especial en los grafos es que podemos representarlos utilizando dos estructuras de datos distintas. En los algoritmos que se aplican sobre ellos veremos que adoptarán tiempos distintos dependiendo de la forma de representación elegida. En particular, los tiempos de ejecución variarán en función del número de vértices y el de aristas, por lo que la utilización de una representación u otra dependerá en gran medida de si el grafo es denso o disperso. Para nombrar los nodos utilizaremos letras mayúsculas, aunque en el código deberemos hacer corresponder cada nodo con un entero entre 1 y N (número de nodos o vértices) de cara a la manipulación de los mismos.
Obtención del camino de un Grafo: Método DIJKSTRA: es un algoritmo para la determinación del camino más corto dado un vértice origen al resto de vértices en un grafo dirigido y con pesos en cada  arista . void  iniciaGrafo() { for  ( int  i=1; <=n; i++) memset(&C[i][1], 0, n * sizeof(int)); } void  insertarnodo( int  a,  int  b,  int  c) { C[a][b] = C[b][a] = c; } int  D[MAXN];  /* distancias mínima desde s al nodo i */ int  padre[MAXN];  /* ruta hacia el nodo i desde s */ int  permanente[MAXN]; /* verdadero al tener la menor ruta al nodo i */
// calculamos las distancias while (  ! pq.empty() ) { nodotmp = pq.top();  pq.pop(); Vi = nodotmp.second; if  ( !permanente[Vi] ) { permanente[Vi] =  true ; for  (Vj = 1; Vj <= n; Vj++) if (!permanente[Vj] && C[Vi][Vj]>0 && D[Vi]+C[Vi][Vj]<D[Vj]) D[Vj] = D[Vi] + C[Vi][Vj], padre[Vj] = Vi, pq.push( pair <int,int> (-D[Vj], Vj) ); } } }  // leemos las aristas for ( int  i=0; i<e; i++) cout <<“Ingrese Arista1: ”; cin >>a; cout <<“Ingrese Arista2: ”;  cin >>b; cout <<“Ingrese Arista3: ”;  cin>>c; insertanodo(a, b, c); // usamos dijkstra para calcular la menor distancia // desde el i-esimo nodo hacia los demas for  ( int  i=1; i<=n; i++) dijkstra( i ), cout <<“La menor distancia desde el nodo hacia los otros nodos es: “<< i; imprimeGrafo(n), cout <<endl; }
Método WARSHALL: Para lograr el propósito del recorrido mínimo dentro de un grafo G, es necesario para nuestro caso en particular (puesto que no es la única técnica existente) la utilización del algoritmo de WARSHALL para el camino mínimo, el cual se expresa de la forma siguiente:
#include <stdio.h> #include <conio.h> #include <ctype.h> #include <stdlib.h> #include <iostream.h> #include <string.h> #define N 50 struct grafo {int dato; grafo *grafo[N]; grafo *sig; }*Pgrafo; grafo *insertar(grafo *nodo, grafo *Agrafo, int num) {if( !Agrafo ) {Agrafo= (grafo*) malloc( sizeof( grafo ) ); Agrafo->sig= NULL; Agrafo->dato= num; if( !nodo ) return Agrafo; else nodo->sig= Agrafo; return Agrafo; }
insertar( Agrafo, Agrafo->sig, num ); return nodo;} int enlazarfull( grafo *nodo ) {  int i; int vacio; if( !nodo->sig )return 0; for( i=0;i<vacio(nodo);i++ ) nodo->grafo[i]= NULL; return 1;} void main() { char op='A'; int val; int i; while(op!='S' ) {clrscr(); cout<<&quot; [N].- Nuevo Nodo.&quot; ; cout<<&quot; [E].- Menu Enlazes.&quot;; cout<<&quot; [V].- Ver Grafo.&quot;; cout<<&quot; [S].- Salir.&quot;; cout<<&quot; Digite Opcion: [  ] &quot;; cin>>op;
switch(op) { case 'N': cout<<&quot; Numero: &quot;; cin>>(&quot;&i&quot;,&val); Pgrafo= insertar( Pgrafo, Pgrafo, val ); break; case 'E':  enlazarfull(Pgrafo); break; case 'V':  break; } } cout<<&quot; Pulsa una tecla para salir...&quot;; getch(); return 0; }
GRACIAS TOTALES, nos vemos en el bingo

Mais conteúdo relacionado

Mais procurados

Mais procurados (12)

Programacion ii
Programacion iiProgramacion ii
Programacion ii
 
Eficiencia en uso de recursos memoria2 p
Eficiencia en uso de recursos memoria2 pEficiencia en uso de recursos memoria2 p
Eficiencia en uso de recursos memoria2 p
 
Coordenadas1
Coordenadas1Coordenadas1
Coordenadas1
 
Act 2 gz_parte_ii
Act 2 gz_parte_iiAct 2 gz_parte_ii
Act 2 gz_parte_ii
 
Tarea 12 funcion gràfica uni minuto
Tarea 12 funcion gràfica uni minutoTarea 12 funcion gràfica uni minuto
Tarea 12 funcion gràfica uni minuto
 
Actividades
ActividadesActividades
Actividades
 
Comandos básicos.pptxe eni
Comandos básicos.pptxe eniComandos básicos.pptxe eni
Comandos básicos.pptxe eni
 
Clases graficas ultima_clase_matlab
Clases graficas ultima_clase_matlabClases graficas ultima_clase_matlab
Clases graficas ultima_clase_matlab
 
estructura lineal lenguaje C
estructura lineal lenguaje Cestructura lineal lenguaje C
estructura lineal lenguaje C
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Bfs en grafos
Bfs en grafosBfs en grafos
Bfs en grafos
 
algoritmos
algoritmosalgoritmos
algoritmos
 

Destaque

Capitulo i filosofia, epistemologia
Capitulo i  filosofia, epistemologiaCapitulo i  filosofia, epistemologia
Capitulo i filosofia, epistemologiajosemeyhuay
 
Actividades
ActividadesActividades
Actividadesabraham
 
Números complexos praticando1
Números complexos praticando1Números complexos praticando1
Números complexos praticando1Renata Pinto
 
Elaboración de material didáctico maría vede
Elaboración de material didáctico maría vedeElaboración de material didáctico maría vede
Elaboración de material didáctico maría vedemariavede
 
Pruebas de hipótesis para una muestra
Pruebas de hipótesis para una muestraPruebas de hipótesis para una muestra
Pruebas de hipótesis para una muestraAlejandro Ruiz
 
8ºano mat correcao teste5 8ano_v1
8ºano mat correcao teste5  8ano_v18ºano mat correcao teste5  8ano_v1
8ºano mat correcao teste5 8ano_v1silvia_lfr
 
Atencion Cliente Textil
Atencion Cliente TextilAtencion Cliente Textil
Atencion Cliente Textiltarrona
 
Ley fed resp admvas serv pub (1)
Ley fed resp admvas serv pub (1)Ley fed resp admvas serv pub (1)
Ley fed resp admvas serv pub (1)PrincessAnna80
 
8ºano mat correcao questao aula 2(fev 2015)
8ºano mat correcao questao aula 2(fev 2015)8ºano mat correcao questao aula 2(fev 2015)
8ºano mat correcao questao aula 2(fev 2015)silvia_lfr
 
Libro el nuevo sistema de justicia penal acusatorio. scjn
Libro el nuevo sistema de justicia penal acusatorio. scjnLibro el nuevo sistema de justicia penal acusatorio. scjn
Libro el nuevo sistema de justicia penal acusatorio. scjnOscar Flores Rocha
 
Pmirs ctpga 2010
Pmirs ctpga 2010Pmirs ctpga 2010
Pmirs ctpga 2010SENA
 
Turismo experiencial plan del turismo español horizonte 2020
Turismo experiencial plan del turismo español horizonte 2020 Turismo experiencial plan del turismo español horizonte 2020
Turismo experiencial plan del turismo español horizonte 2020 José Cantero Gómez
 
Apresentação Lidiane
Apresentação LidianeApresentação Lidiane
Apresentação Lidianejorgellss
 
Unam fesc planeación de ventas doc
Unam fesc planeación de ventas docUnam fesc planeación de ventas doc
Unam fesc planeación de ventas docJerry Arketype
 

Destaque (20)

Capitulo i filosofia, epistemologia
Capitulo i  filosofia, epistemologiaCapitulo i  filosofia, epistemologia
Capitulo i filosofia, epistemologia
 
Actividades
ActividadesActividades
Actividades
 
do no harm - proyecto kalu 09-2010
do no harm - proyecto kalu 09-2010do no harm - proyecto kalu 09-2010
do no harm - proyecto kalu 09-2010
 
Números complexos praticando1
Números complexos praticando1Números complexos praticando1
Números complexos praticando1
 
Elaboración de material didáctico maría vede
Elaboración de material didáctico maría vedeElaboración de material didáctico maría vede
Elaboración de material didáctico maría vede
 
Pruebas de hipótesis para una muestra
Pruebas de hipótesis para una muestraPruebas de hipótesis para una muestra
Pruebas de hipótesis para una muestra
 
8ºano mat correcao teste5 8ano_v1
8ºano mat correcao teste5  8ano_v18ºano mat correcao teste5  8ano_v1
8ºano mat correcao teste5 8ano_v1
 
11주차
11주차11주차
11주차
 
Atencion Cliente Textil
Atencion Cliente TextilAtencion Cliente Textil
Atencion Cliente Textil
 
Mariana busin
Mariana businMariana busin
Mariana busin
 
Ley fed resp admvas serv pub (1)
Ley fed resp admvas serv pub (1)Ley fed resp admvas serv pub (1)
Ley fed resp admvas serv pub (1)
 
Biorremediacion
BiorremediacionBiorremediacion
Biorremediacion
 
8ºano mat correcao questao aula 2(fev 2015)
8ºano mat correcao questao aula 2(fev 2015)8ºano mat correcao questao aula 2(fev 2015)
8ºano mat correcao questao aula 2(fev 2015)
 
Libro el nuevo sistema de justicia penal acusatorio. scjn
Libro el nuevo sistema de justicia penal acusatorio. scjnLibro el nuevo sistema de justicia penal acusatorio. scjn
Libro el nuevo sistema de justicia penal acusatorio. scjn
 
Secuencia didáctica
Secuencia didácticaSecuencia didáctica
Secuencia didáctica
 
Pmirs ctpga 2010
Pmirs ctpga 2010Pmirs ctpga 2010
Pmirs ctpga 2010
 
Turismo experiencial plan del turismo español horizonte 2020
Turismo experiencial plan del turismo español horizonte 2020 Turismo experiencial plan del turismo español horizonte 2020
Turismo experiencial plan del turismo español horizonte 2020
 
Rutas de aprendizaje 2014 0 dec juli
Rutas de aprendizaje 2014 0 dec juliRutas de aprendizaje 2014 0 dec juli
Rutas de aprendizaje 2014 0 dec juli
 
Apresentação Lidiane
Apresentação LidianeApresentação Lidiane
Apresentação Lidiane
 
Unam fesc planeación de ventas doc
Unam fesc planeación de ventas docUnam fesc planeación de ventas doc
Unam fesc planeación de ventas doc
 

Semelhante a Grafos

Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)José Antonio Sandoval Acosta
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenashorusblom
 
Grafos-2021.pdf
Grafos-2021.pdfGrafos-2021.pdf
Grafos-2021.pdfNathanLux3
 
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)luis freddy
 
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)luis freddy
 
Ejercicios programacion cortos
Ejercicios programacion cortosEjercicios programacion cortos
Ejercicios programacion cortosmilanollarves
 
Matlab presentacion enero2012
Matlab presentacion enero2012Matlab presentacion enero2012
Matlab presentacion enero2012gerardoarbito
 
GRAFICOS POLARES CLASE 8 2023.pdf
GRAFICOS POLARES CLASE 8 2023.pdfGRAFICOS POLARES CLASE 8 2023.pdf
GRAFICOS POLARES CLASE 8 2023.pdfNandoMartiHufer
 
COMANDOS EJEMPLOS DE MATLAB.pdf
COMANDOS EJEMPLOS DE MATLAB.pdfCOMANDOS EJEMPLOS DE MATLAB.pdf
COMANDOS EJEMPLOS DE MATLAB.pdfSolitarioFredd
 
Agrupamiento Kmeans
Agrupamiento KmeansAgrupamiento Kmeans
Agrupamiento KmeansOmar Sanchez
 
Graficos en matlab
Graficos en matlabGraficos en matlab
Graficos en matlabMarc Llanos
 
Guia De Practica 3
Guia De Practica 3Guia De Practica 3
Guia De Practica 3louis
 

Semelhante a Grafos (20)

Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
Algorimos básicos para cifrar y descifrar en C# (encriptar y desencriptar)
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenas
 
Grafos-2021.pdf
Grafos-2021.pdfGrafos-2021.pdf
Grafos-2021.pdf
 
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (2)
 
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)
3 desarollo manejo datos capitulo 2 -01 arreglos dos dimensiones (5)
 
Ejercicios programacion cortos
Ejercicios programacion cortosEjercicios programacion cortos
Ejercicios programacion cortos
 
Matlab presentacion enero2012
Matlab presentacion enero2012Matlab presentacion enero2012
Matlab presentacion enero2012
 
Informe tecnico
Informe tecnicoInforme tecnico
Informe tecnico
 
MéTodos Java
MéTodos JavaMéTodos Java
MéTodos Java
 
Funciones str
Funciones strFunciones str
Funciones str
 
GRAFICOS POLARES CLASE 8 2023.pdf
GRAFICOS POLARES CLASE 8 2023.pdfGRAFICOS POLARES CLASE 8 2023.pdf
GRAFICOS POLARES CLASE 8 2023.pdf
 
COMANDOS EJEMPLOS DE MATLAB.pdf
COMANDOS EJEMPLOS DE MATLAB.pdfCOMANDOS EJEMPLOS DE MATLAB.pdf
COMANDOS EJEMPLOS DE MATLAB.pdf
 
Agrupamiento Kmeans
Agrupamiento KmeansAgrupamiento Kmeans
Agrupamiento Kmeans
 
expo
expoexpo
expo
 
Graficos en matlab
Graficos en matlabGraficos en matlab
Graficos en matlab
 
Guia De Practica 3
Guia De Practica 3Guia De Practica 3
Guia De Practica 3
 
Strcat
StrcatStrcat
Strcat
 
Plots
PlotsPlots
Plots
 
Cadenas y punteros.ppt
Cadenas y punteros.pptCadenas y punteros.ppt
Cadenas y punteros.ppt
 
Luis Gamboa
Luis  GamboaLuis  Gamboa
Luis Gamboa
 

Último

SISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaSISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaBetlellyArteagaAvila
 
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfAFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfOdallizLucanaJalja1
 
EL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxEL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxec677944
 
Coca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxCoca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxJesDavidZeta
 
Pensamiento Lógico - Matemático USB Empresas
Pensamiento Lógico - Matemático USB EmpresasPensamiento Lógico - Matemático USB Empresas
Pensamiento Lógico - Matemático USB Empresasanglunal456
 
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...antonellamujica
 
Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosCondor Tuyuyo
 
Elección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxElección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxDiegoQuispeHuaman
 
Gastos que no forman parte del Valor en Aduana de la mercadería importada
Gastos que no forman parte del Valor en Aduana de la mercadería importadaGastos que no forman parte del Valor en Aduana de la mercadería importada
Gastos que no forman parte del Valor en Aduana de la mercadería importadaInstituto de Capacitacion Aduanera
 
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAPLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAAlexandraSalgado28
 
Tema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfTema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfmaryisabelpantojavar
 
estadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptestadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptMiguelAngel653470
 
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAPRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAgisellgarcia92
 
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?Michael Rada
 
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesProyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesjimmyrocha6
 
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxCADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxYesseniaGuzman7
 
Derechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorDerechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorMarcosAlvarezSalinas
 
Habilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxHabilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxLUISALEJANDROPEREZCA1
 
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptx
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptxu1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptx
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptxUrabeSj
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfLizCarolAmasifuenIba
 

Último (20)

SISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaSISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privada
 
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfAFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
 
EL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxEL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptx
 
Coca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxCoca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptx
 
Pensamiento Lógico - Matemático USB Empresas
Pensamiento Lógico - Matemático USB EmpresasPensamiento Lógico - Matemático USB Empresas
Pensamiento Lógico - Matemático USB Empresas
 
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
 
Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de Condominios
 
Elección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxElección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptx
 
Gastos que no forman parte del Valor en Aduana de la mercadería importada
Gastos que no forman parte del Valor en Aduana de la mercadería importadaGastos que no forman parte del Valor en Aduana de la mercadería importada
Gastos que no forman parte del Valor en Aduana de la mercadería importada
 
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAPLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
 
Tema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfTema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdf
 
estadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptestadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.ppt
 
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAPRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
 
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
 
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesProyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
 
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxCADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
 
Derechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorDerechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejor
 
Habilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxHabilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptx
 
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptx
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptxu1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptx
u1_s4_gt_la demanda y la oferta global_b27t9rulx9 (1).pptx
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
 

Grafos

  • 1.
  • 2. GRAFOS: Estructura de datos no lineal (Programación no numérica) que permiten representar los diferentes tipos de relaciones entre objetos G=(N,A) Supongamos: N={1,2,3,4,5} Y la siguiente relación en A: R={(1,2);(2,3);(3,4);(4,5)} En forma de grafo sería: 1 2 3 4 5
  • 3.
  • 4. Búsqueda en Profundidad: Se implementa de forma recursiva, aunque también puede realizarse con una pila. Se utiliza un array “val” para almacenar el orden en que fueron explorados los vértices. int id=0; int val[V]; void buscar() { int i; for (i=1; i<=V; i++) val[i]=0; for (i=1; i<=V; i++) if (val[i]==0) visitar(i); } void visitar(int i) // matriz de adyacencia { int t; val[i]=++id; for (t=1; t<=V; t++) if (a[i][t] && val[t]==0) visitar(t); } void visitar(int i) // listas de adyacencia { nodo *t; val[i]=++id; for (t=a[i]; t!=z; t=t->sig) if (val[t->v]==0) visitar(t->v); }
  • 5. Representación de Grafos: Una característica especial en los grafos es que podemos representarlos utilizando dos estructuras de datos distintas. En los algoritmos que se aplican sobre ellos veremos que adoptarán tiempos distintos dependiendo de la forma de representación elegida. En particular, los tiempos de ejecución variarán en función del número de vértices y el de aristas, por lo que la utilización de una representación u otra dependerá en gran medida de si el grafo es denso o disperso. Para nombrar los nodos utilizaremos letras mayúsculas, aunque en el código deberemos hacer corresponder cada nodo con un entero entre 1 y N (número de nodos o vértices) de cara a la manipulación de los mismos.
  • 6. Obtención del camino de un Grafo: Método DIJKSTRA: es un algoritmo para la determinación del camino más corto dado un vértice origen al resto de vértices en un grafo dirigido y con pesos en cada arista . void iniciaGrafo() { for ( int i=1; <=n; i++) memset(&C[i][1], 0, n * sizeof(int)); } void insertarnodo( int a, int b, int c) { C[a][b] = C[b][a] = c; } int D[MAXN]; /* distancias mínima desde s al nodo i */ int padre[MAXN]; /* ruta hacia el nodo i desde s */ int permanente[MAXN]; /* verdadero al tener la menor ruta al nodo i */
  • 7. // calculamos las distancias while ( ! pq.empty() ) { nodotmp = pq.top(); pq.pop(); Vi = nodotmp.second; if ( !permanente[Vi] ) { permanente[Vi] = true ; for (Vj = 1; Vj <= n; Vj++) if (!permanente[Vj] && C[Vi][Vj]>0 && D[Vi]+C[Vi][Vj]<D[Vj]) D[Vj] = D[Vi] + C[Vi][Vj], padre[Vj] = Vi, pq.push( pair <int,int> (-D[Vj], Vj) ); } } } // leemos las aristas for ( int i=0; i<e; i++) cout <<“Ingrese Arista1: ”; cin >>a; cout <<“Ingrese Arista2: ”; cin >>b; cout <<“Ingrese Arista3: ”; cin>>c; insertanodo(a, b, c); // usamos dijkstra para calcular la menor distancia // desde el i-esimo nodo hacia los demas for ( int i=1; i<=n; i++) dijkstra( i ), cout <<“La menor distancia desde el nodo hacia los otros nodos es: “<< i; imprimeGrafo(n), cout <<endl; }
  • 8. Método WARSHALL: Para lograr el propósito del recorrido mínimo dentro de un grafo G, es necesario para nuestro caso en particular (puesto que no es la única técnica existente) la utilización del algoritmo de WARSHALL para el camino mínimo, el cual se expresa de la forma siguiente:
  • 9. #include <stdio.h> #include <conio.h> #include <ctype.h> #include <stdlib.h> #include <iostream.h> #include <string.h> #define N 50 struct grafo {int dato; grafo *grafo[N]; grafo *sig; }*Pgrafo; grafo *insertar(grafo *nodo, grafo *Agrafo, int num) {if( !Agrafo ) {Agrafo= (grafo*) malloc( sizeof( grafo ) ); Agrafo->sig= NULL; Agrafo->dato= num; if( !nodo ) return Agrafo; else nodo->sig= Agrafo; return Agrafo; }
  • 10. insertar( Agrafo, Agrafo->sig, num ); return nodo;} int enlazarfull( grafo *nodo ) { int i; int vacio; if( !nodo->sig )return 0; for( i=0;i<vacio(nodo);i++ ) nodo->grafo[i]= NULL; return 1;} void main() { char op='A'; int val; int i; while(op!='S' ) {clrscr(); cout<<&quot; [N].- Nuevo Nodo.&quot; ; cout<<&quot; [E].- Menu Enlazes.&quot;; cout<<&quot; [V].- Ver Grafo.&quot;; cout<<&quot; [S].- Salir.&quot;; cout<<&quot; Digite Opcion: [ ] &quot;; cin>>op;
  • 11. switch(op) { case 'N': cout<<&quot; Numero: &quot;; cin>>(&quot;&i&quot;,&val); Pgrafo= insertar( Pgrafo, Pgrafo, val ); break; case 'E': enlazarfull(Pgrafo); break; case 'V': break; } } cout<<&quot; Pulsa una tecla para salir...&quot;; getch(); return 0; }
  • 12. GRACIAS TOTALES, nos vemos en el bingo