ESTRUCTURA DE DATOS Y DE LA INFORMACIÓN II

Tamaño: px
Comenzar la demostración a partir de la página:

Download "ESTRUCTURA DE DATOS Y DE LA INFORMACIÓN II"

Transcripción

1 ESTRUCTURA DE DATOS Y DE LA INFORMACIÓN II PRÁCTICA 2: GRAFOS grupo comienzo entrega 1a miércoles 3/3 miércoles 14/4 1b jueves 4/3 jueves 15/4 1c lunes 8/3 lunes 12/4 2a viernes 5/3 viernes 9/4 2b lunes 8/3 lunes 12/4 2c martes 2/3 martes 6/4 2d jueves 4/3 jueves 15/4 3b jueves 4/3 jueves 15/5 3c martes 2/3 martes 6/4 En esta práctica se implementarán algoritmos que actuarán sobre un grafo representado por su listas de adyacencias o por su matriz de adyacencias. Se implementará una estructura llamada GRAFO y unas operaciones que operan sobre esta estructura. La estructura debe permitir el almacenamiento de un grafo usando ambas las opciones: listas de adyacencia o matriz de adyacencia, la función de creación del grafo debe aceptar como parámetro un indicador de la forma de almacenamiento que se desea, y las funciones que operan sobre un grafo existente deben operar independientemente de la forma de almacenamiento usada, es decir, cada función que se implemente en esta práctica deberá ser capaz de usar ambas opciones. Una posibilidad en este sentido es crear en la estructura GRAFO un indicador de la forma de almacenamiento usada y punteros a las dos formas, por ejemplo, un puntero a un array de estructuras de tipo VERTICE que contenga, independientemente de la representación, la información asociada a cada vértice, un puntero a un array de estructuras de tipo ADY LIST, que contenga, para cada vértice, la lista de adyacencia, y un puntero a una estructura de tipo int ** con la matriz de adyacencia. Las funciones deben ser capaces de operar con grafos con vértices de tipo arbitrario, es decir, las funciones considerarán los vértices como punteros de tipo void *. En el momento de la inserción, cada vértice se introducirá con un número y un puntero a la información del vértice. Una vez definidas estas estructuras, se escribirá una serie de funciones, como explicado a continuación, y, para cada ejercicio, un programa que efectúe las operaciones descriptas. esta practica, todos los archivos que contengan grafos seguirán el mismo formato: En una linea con el numero de vértices del grafo (N); 1

2 2 a continuación, N lineas, cada una conteniendo la descrición y la lista de adyacencia de un vértice. En esta practica la descrición de un vertice consiste en un nombre y un número. Por tanto el contenido de cada línea es el siguiente: a) el número de orden del vértice; b) los datos del vértice (un nombre y un número); c) una serie de pars de numeros que constituyen la lista de adyacencia del vértice; el primer número de cada par es el vértice de llegada de un arco que sale del vértice presente, el segundo número es el peso del arco (que se pone siempre a 1 si el grafo no es ponderado). Ejemplo: Un grafo no ponderado en que se almacenan en los vértices los nombres y las edades de cuatro persona, como el siguiente Juan, 23 Paco, 31 se representa con el fichero: Pepe, 35 María, Juan Paco Pepe Maria 27 Se deberá entregar en la memoria el pseudo-codigo de todos los algoritmos empleados. * * * Ejercicio 1: Implementar las siguientes primitivas: GRAPH GRAPHInit: Crea una estructura de grafo en una representación especificada (listas de adyacencias o matriz de adyacencia), reservando espacio de memoria para un número dado de vértices. Nótese que, durante la ejecución de un programa, se debe permitir al grafo de crecer hasta contener más de n vértices. deberán alocar espacio de memoria suficiente. Cuando esto suceda, las funciones de grafo int GRAPHInsertVertex: inserta un vértice en el grafo, asignandole un número de identificación. La función devuelve el número de identificación del nuevo vértice.

3 3 int GRAPHInsertEdge: inserta un arco en un grafo entre dos vértices especificados. Si uno de los vértices no existe, la función no crea el arco y devuelve ERROR, si no crea el arco y devuelve OK. void GRAPHDestroy(GRAPH g): elimina el grafo g y libera la memoria alocada. * * * Ejercicio 2: El fichero metro.txt contiene un grafo en el cual cada vértice contiene el nombre de una estación de la red re metro de Madrid y el numero de personas que suben al metro en cada estación. Escribir un programa que utilice un algoritmo de complejidad O( V + E ) para encontrar todos los caminos de distancia mínima que unan dos vértices dados del grafo. El programa se pondrá en un fichero llamado camino y recibirá en la línea de comando los siguientes datos de entrada: i) el nombre de un fichero (p.ej. metro.txt) con los datos del grafo; ii) un entero que indica si se desea usar la representación por listas de adyacencias o la matriz de adyacencia (0 si listas, 1 si matriz); iii) los nombres de los vértices de salida y llegada. Para cada camino más corto entre los vértices dados, el programa deberá escribir por pantalla: i) el nombre de todas las estaciones de metro en el camino; ii) el numero total de personas que han subido al metro. Ejemplo: Si el programa recibe el grafo siguiente: Legazpi, 15 Pacifico, 50 Sol, 45 Moncloa, 10 y los nombres "Pacifico" y "Moncloa" deberá imprimir Pacifico Sol Moncloa 105

4 4 (105 = ). Ejercicio 3: Escribir un programa "conexo" que encuentre las componentes fuertemente conexas de un grafo dado. El programa tomará como argumento de entrada el nombre del fichero con el grafo cuyas componentes de quieren calcular, p. ej. "cfc.txt", e imprimirá en la pantalla el número de componentes conexas y, para cada una de ellas, el nombre de los vértices que la componen y el valor medio de las edades asociadas a estos vértices. Ejercicio 4: Escribir un programa "topologica" que tome como entrada en la línea de comando el nombre de un fichero con un grafo (p.ej. "orden.txt") y determine si el grafo contiene ciclos. Si el grafo no contiene ciclos (o sea, si el grafo es un DAG), muestre su ordenación topológica. caso de encontrar un ciclo el programa debe mostrar todos los arcos y su clasificación (ARBOL, ATRAS, ADELANTE, CRUCE) en la pantalla con el siguiente formato: En printf ("arco entre %16s y %16s es %16s\n", nombre_vertice1, nombre_vertice2, clasificacion); Ejercicio 5: En este ejercicio se evaluarán los costes de ejecutar algunos algoritmos que se han implementado a lo largo de esta práctica. Para esto se utilizará el programa gnopodigraph.exe, capaz de generar un grafo dirigido no ponderado aleatorio de N vértices. Este programa requiere tres parámetros para su ejecución: el número de vértices del grafo (N), la probabilidad (p) de que dos nodos cualesquiera del grafo estén conectados y el nombre del fichero de salida. de esta práctica. El fichero de salida tiene el mismo formato que los usado a lo largo Hállese el tiempo de CPU de ejecutar los algoritmos de los ejercicios 2--6 aplicados a grafos de tama~no N = 500; N = 1000; N = 5000; para los siguientes valores de probabilidad: p = (1, 0.5, 0.1, 0.01). Se pide de comparar y analizar los resultados empíricos con los teóricos. El programa gnopodigraph se usará para generar 12 ficheros con grafos (uno para cada combinación de tama~no y probabilidad). Para la prueba se utilizarán otra vez los programas escritos a lo largo de esta práctica, modificados para calcular el tiempo de ejecución y para escribirlo en la pantalla en lugar de las informaciones originales. El computo del tiempo de ejecución no deberá tomar en cuenta el tiempo necesario para leer el fichero de entrada y para

5 5 escribir los datos en la pantalla. estructura como: Si un programa escrito para esta práctica tiene una main() { read_input_data(); execute_algorithm(); write_output_data(); su estructura deberá cambiarse a main() { read_input_data(); t1 = tiempo_inicio(); execute_algorithm(); t2 = tiempo_final(); write_execution_time(t2-t1); Es necesario considerar también que medir el tiempo de ejecución con las funciones estándares del C no es fiable si el tiempo de ejecución es demasiado corto (unos segundos). Si el tiempo medido es de unos segundos, será necesario obtener una estimación más fiable repitiendo el algoritmo varias veces. Por ejemplo: main() { read_input_data(); t1 = tiempo_inicio(); for (i=0; i<100; i++) { execute_algorithm(); t2 = tiempo_final(); write_execution_time( (t2-t1)/100.0 ); Ejercicio 6: En este ejercicio el grafo que se leerá del fichero es ponderado, con pesos que pueden ser positivos o negativos. Cada vértice contiene, como antes, un nombre y un número, aún si en este ejercicio el numero no tiene ningún significado (el número se ha puesto sólo para que sea posible usar las funciones de lectura de ficheros creadas para los ejercicios precedentes). Dado un grafo ponderado (p.ej. el grafo contenido en el fichero "ponderado.txt" o en

6 6 "negativo.txt"), usar el algoritmo de Bellman-Ford para verificar si el grafo contiene ciclos de coste negativo. Si el grafo los contiene, se escriban en la pantalla todos los vértices que componen todos los ciclos de coste negativo. Si el grafo no los contiene, se escriban en la pantalla los vértices que forman el camino mínimo entre el primer y el último vértice del grafo (donde "primero" y "último" se refiere al orden en que los vértices aparecen en el fichero). Ejercicio 7: El fichero metro mod.txt contiene otro plan de metro en que cada arista tiene un peso igual al número de personas que han subido al metro en este tramo. Utilice el algoritmo de Dijkstra para escribir un program aque determine el camino entre dos estaciones por el cual ha subido al metro el menor número de personas. El programa se llamará dijkstra y recibirá en la líneas de comando el nombre del fichero, el nombre de la estación de salida, y el nombre de la estación de llegada. Por ejemplo: dijkstra metro_mod.txt canal lista El programa deberá determinar el camino mínimo en el grafo ponderado entre las dos estaciones dadas, e imprimir en pantalla las estaciones por que hay que pasar y el número de personas que han subido al metro en el recorrido. Madrid, febrero 2010

ESTRUCTURA DE DATOS Y DE LA. Calendario de entregas (de la práctica completa)

ESTRUCTURA DE DATOS Y DE LA. Calendario de entregas (de la práctica completa) ESTRUCTURA DE DATOS Y DE LA PRÁCTICA 2 GRAFOS, PRIMERA INFORMACIÓN PARTE 2 Calendario de entregas (de la práctica completa) grupo comienzo entrega 1a miércoles 4/3 miércoles 25/3 1b jueves 5/3 jueves 26/3

Más detalles

TIPOS ABSTRACTOS DE DATOS EN HASKELL

TIPOS ABSTRACTOS DE DATOS EN HASKELL TIPOS ABSTRACTOS DE DATOS EN HASKELL ÍNDICE GENERAL 1. Introducción a Haskell 2. Tipos abstractos de datos en Haskell 3. TAD Grafo 4. TAD Montículos 5. Bibliografía INTRODUCCIÓN A HASKELL 1. Introducción

Más detalles

Estructuras de Datos y Algoritmos: Boletín de Problemas del segundo parcial

Estructuras de Datos y Algoritmos: Boletín de Problemas del segundo parcial Estructuras de Datos y Algoritmos: Boletín de Problemas del segundo parcial (Facultad de Informática) Curso 00 0 Estructuras de Datos y Algoritmos (FI-UPV) Curso 00 0 Árboles. Si la acción P fuera escribir

Más detalles

Francisco J. Hernández López

Francisco J. Hernández López Francisco J. Hernández López fcoj23@cimat.mx Estructura de datos no lineales donde cada componente o nodo puede tener uno o más predecesores (a diferencia de los árboles) y sucesores Un grafo esta formado

Más detalles

Análisis de algoritmos

Análisis de algoritmos Demostración laboratorio: Martes 14 de Julio de 2015 Entrega vía Web: Domingo 19 de Julio de 2015 Demostración laboratorio y Entrega vía Web (Extraordinario): Martes 21 de Julio de 2015 M. en C. Edgardo

Más detalles

Estructuras de Datos y Algoritmos

Estructuras de Datos y Algoritmos Estructuras de Datos y Algoritmos Práctico 3: Grafos (Finalización: 06/09) Ing. en Computación - Ing. en Informática - Prof. en Computación Año 2018 Ejercicio 1: Dado el siguiente p-digrafo: 5 b 6 d 11

Más detalles

Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos.

Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos. Grafos Los grafos son estructuras que constan de vértices o nodos y de aristas o arcos que conectan los vértices entre sí. Un grafo G consiste en dos cosas: 1. Un conjunto V de elementos llamados nodos

Más detalles

OBJETIVOS ÍNDICE BIBLIOGRAFÍA

OBJETIVOS ÍNDICE BIBLIOGRAFÍA OBJETIVOS Tema 9: GRAFOS Primera Parte Estructuras de Datos y Algoritmos Curso 2002/03 Definiciones formales de grafo y conceptos relacionados Estructuras de datos para representar grafos Algoritmos para

Más detalles

APELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA

APELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA Hoja 1/10 Duración: una hora y media Resultados de aprendizaje que se evalúan en este examen: R2: Saber emplear las estructuras de control de flujo de programación para implementar algoritmos sencillos.

Más detalles

Grafos. Amalia Duch Brown Octubre de 2007

Grafos. Amalia Duch Brown Octubre de 2007 Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido

Más detalles

Tema 6.2: Camino de Menor Valor. CMV: Objetivo. CMV: ejemplo. Ejemplo. Camino de menor valor

Tema 6.2: Camino de Menor Valor. CMV: Objetivo. CMV: ejemplo. Ejemplo. Camino de menor valor Tema.: Camino de Menor Valor Modelización Matemática Máster en Ingeniería de Caminos, Canales y Puertos Camino de menor valor Algoritmos Algoritmo de Dijkstra Algoritmo de Bellman-Ford Ignacio Montes Departamento

Más detalles

PROGRAMACION ALGORITMOS Y ESTRUCTURAS DE DATOS PRACTICA N 4

PROGRAMACION ALGORITMOS Y ESTRUCTURAS DE DATOS PRACTICA N 4 PROGRAMACION ALGORITMOS Y ESTRUCTURAS DE DATOS PRACTICA N 4 Ámbito de las variables. Utilización de punteros 1. Dados los siguientes programas. Indique las salidas por pantalla que generan. 1.a void Calculo(

Más detalles

1. GRAFOS : CONCEPTOS BASICOS

1. GRAFOS : CONCEPTOS BASICOS 1. GRAFOS : CONCEPTOS BASICOS Sea V un conjunto finito no vacio y sea E V x V. El par (V, E) es un grafo no dirigido, donde V es un conjunto de vértices o nodos y E es un conjunto de aristas. Denotaremos

Más detalles

Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación

Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación Asignatura: Programación I Fecha: Marzo 2012 Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación Funciones 1. Escriba un programa en C que intercambie

Más detalles

ANÁLISIS Y DISEÑO DE ALGORITMOS

ANÁLISIS Y DISEÑO DE ALGORITMOS ANÁLISIS Y DISEÑO DE ALGORITMOS CURSO 26/27 BOLETÍN DE PROBLEMAS: ALGORITMOS VORACES Ejercicio 1 Sean n personas, representadas por los Enteros : 1..n, puestas en círculo, y m, un Entero no negativo cualquiera,

Más detalles

ESTRUCTURAS DE DATOS Y DE LA INFORMACIÓN 2

ESTRUCTURAS DE DATOS Y DE LA INFORMACIÓN 2 ESTRUCTURAS DE DATOS Y DE LA INFORMACIÓN 2 Entregas: PRÁCTICA 3: Ficheros y Bases de Datos. 2009-2010 Las fechas de entrega electrónicas serán estrictamente rigurosas. Es obligatorio entregar la práctica

Más detalles

Teoría y Complejidad Algorítmica

Teoría y Complejidad Algorítmica Teoría y Complejidad Algorítmica Practica 3 Eduardo Viciana Gámez Contiene documentación y código fuente de la práctica 2 Descripción de la Práctica En esta práctica se van a comparar dos algoritmos que

Más detalles

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Departamento de Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Uso de punteros Objetivos de la práctica: - Entender la representación de números (enteros y reales) en el

Más detalles

Propiedades. Ejercicios Tema 14. Representación de Grafo. Grado de Grafo (Matriz de Adyacencia)

Propiedades. Ejercicios Tema 14. Representación de Grafo. Grado de Grafo (Matriz de Adyacencia) Propiedades Ejercicios Tema Ejercicios Adaptados de Apuntes y Exámenes de EDA Germán Moltó gmolto@dsic.upv.es Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad

Más detalles

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros

Más detalles

Algoritmos Elementales de Grafos. Agustín J. González ELO-320: Estructura de Datos Y Algoritmos 1er.Sem. 2002

Algoritmos Elementales de Grafos. Agustín J. González ELO-320: Estructura de Datos Y Algoritmos 1er.Sem. 2002 Algoritmos Elementales de Grafos Agustín J. González ELO-0: Estructura de Datos Y Algoritmos er.sem. 00 Introducción Estudiaremos métodos para representar y explorar o recorrer grafos. Explorar un grafo

Más detalles

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2016-2017 1º Grado en Informática Práctica 2: Memoria dinámica, Bibliotecas Objetivos Practicar conceptos

Más detalles

Teoría de grafos y optimización en redes

Teoría de grafos y optimización en redes Teoría de grafos y optimización en redes José María Ferrer Caja Universidad Pontificia Comillas Definiciones básicas Grafo: Conjunto de nodos (o vértices) unidos por aristas G = (V,E) Ejemplo V = {,,,,

Más detalles

GRAFOS. Tomado de: Joyanes Aguilar Luis, Estructuras de datos en Java. CASOS

GRAFOS. Tomado de: Joyanes Aguilar Luis, Estructuras de datos en Java. CASOS GRAFOS Tomado de: Joyanes Aguilar Luis, Estructuras de datos en Java. CASOS 1.4 El recorrido del cartero Imaginemos un grafo que representa el mapa de las calles de un barrio. Una calle va de una esquina

Más detalles

Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios

Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios CLASE GRAFOS Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios libros por lo que está prohibida su impresión

Más detalles

Fecha Segundo Cuarto Sexto Octavo

Fecha Segundo Cuarto Sexto Octavo PRIMER ORDINARIO Lunes 23 de Martes 24 de BASE DE Miércoles 25 de Jueves 26 de Viernes 27 de SEGUNDO ORDINARIO Lunes 23 de Martes 24 de BASE DE Miércoles 25 de Jueves 26 de Viernes 27 de TERCER ORDINARIO

Más detalles

Los grafos son estructuras de datos Representan relaciones entre objetos. Son aplicables en. Relaciones arbitrarias, es decir No jerárquicas.

Los grafos son estructuras de datos Representan relaciones entre objetos. Son aplicables en. Relaciones arbitrarias, es decir No jerárquicas. ESTRUCTURA DE DATOS Los grafos son estructuras de datos Representan relaciones entre objetos Relaciones arbitrarias, es decir No jerárquicas Son aplicables en Química Modem Geografía Ing. Eléctrica e Industrial,

Más detalles

Fig. 3.8 Eliminar una conexión existente.

Fig. 3.8 Eliminar una conexión existente. Programa de implantación de red de autobuses en región urbana Pág. 21 Eliminar o consultar una conexión existente: En la barra de botones se pulsará el botón CONEXIONES del formulario del programa, (Véase

Más detalles

Grafos: Fundamentos Representaciones, etc. Jose Aguilar

Grafos: Fundamentos Representaciones, etc. Jose Aguilar Grafos: Fundamentos Representaciones, etc. Jose Aguilar Introducción Las estructura de datos no lineales se caracterizan por tener una relación de adyacencia genérica entre sus elementos, es decir, un

Más detalles

Grafos. 19 de diciembre de 2013

Grafos. 19 de diciembre de 2013 Grafos 19 de diciembre de 2013 Grafo Un grafo es un conjunto, no vacío, de objetos llamados vértices (o nodos) y una selección de pares de vértices, llamados aristas (edges en inglés) que pueden ser orientados

Más detalles

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros

Más detalles

Teoría de redes y optimización en redes

Teoría de redes y optimización en redes Teoría de redes y optimización en redes Pedro Sánchez Martín Contenidos Definiciones básicas Árbol generador mínimo de expansión Camino mínimo Algoritmo Dkstra Algoritmo Bellman-Ford Fluo máximo Fluo de

Más detalles

Algoritmos voraces (greedy)

Algoritmos voraces (greedy) Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 21 de marzo de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de 2018 1 / 45 1 Algoritmos voraces (greedy) Aplicaciones de

Más detalles

Examen Junio- Grupo B Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo B Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo B Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Empresa Videojuegos (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Rectangulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

Tema: Algoritmos para la ruta más corta en un Grafo.

Tema: Algoritmos para la ruta más corta en un Grafo. Programación IV. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Algoritmos para la ruta más corta en un Grafo. Objetivos Específicos Definir el concepto de camino

Más detalles

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Lógica y Estructuras Discretas Tutor: Antonio Rivero Cuesta Tema 5 Teoría de Grafos Conceptos Básicos Un grafo consta de: Grafo Un conjunto de nodos, Un conjunto de aristas

Más detalles

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos

Más detalles

PROBLEMA 1. Rellena el hueco 1 (línea 23). Realiza la reserva de memoria para almacenar los n puntos.

PROBLEMA 1. Rellena el hueco 1 (línea 23). Realiza la reserva de memoria para almacenar los n puntos. PROBLEMA 1. El siguiente programa tiene algunos huecos en blanco que tienes que rellenar para que funcione correctamente. En cada hueco va una única línea de C, salvo en el cuerpo de la función calcula_area_triangulo,

Más detalles

ESTRUCTURAS DE DATOS Y ALGORITMOS

ESTRUCTURAS DE DATOS Y ALGORITMOS ESTRUCTURAS DE DATOS Y ALGORITMOS CURSO 2009 PRÁCTICO 8 Nota: al igual que en los prácticos 6 y 7, en los problemas que siguen se usarán los tipos lista y árbol binario, como tipos abstractos, cada uno

Más detalles

Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre

Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre elementos de un conjunto. Típicamente, un grafo se representa

Más detalles

1. Diseñe algoritmos que permitan resolver eficientemente el problema de la mochila 0/1 para los siguientes casos:

1. Diseñe algoritmos que permitan resolver eficientemente el problema de la mochila 0/1 para los siguientes casos: PROGRAMACIÓN DINÁMICA RELACIÓN DE EJERCICIOS Y PROBLEMAS 1. Diseñe algoritmos que permitan resolver eficientemente el problema de la mochila /1 para los siguientes casos: a. Mochila de capacidad W=15:

Más detalles

Grafos y Redes. 3. Resolución: Dibujar el camino sin levantar el lápiz y pasando sólo una vez por cada arco o arista.

Grafos y Redes. 3. Resolución: Dibujar el camino sin levantar el lápiz y pasando sólo una vez por cada arco o arista. Grafos y Redes. Nodos: vértices, 2, 3 2. Arcos: aristas, conexión entre nodos. 2, 54, etc. 3. Resolución: Dibujar el camino sin levantar el lápiz y pasando sólo una vez por cada arco o arista. 4. Grado

Más detalles

ANÁLISIS Y DISEÑO DE ALGORITMOS

ANÁLISIS Y DISEÑO DE ALGORITMOS ANÁLISIS Y DISEÑO DE ALGORITMOS CURSO 2005/2006 BOLETÍN DE PROBLEMAS: ALGORITMOS VORACES Ejercicio 1 Sean n personas, representadas por los Enteros : 1..n, puestas en círculo, y m, un Entero no negativo

Más detalles

Tema: Recorrido de Grafos. Ruta más corta

Tema: Recorrido de Grafos. Ruta más corta PED104. Guía N 12 Página 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación con Estructuras de Datos Tema: Recorrido de Grafos. Ruta más corta Competencia Desarrolla sistemas de información

Más detalles

Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos

Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos 1! 1. Algoritmos recursivos " 1.1 Algoritmos recursivos. Recursión simple " 1.2 Algoritmos con vuelta atrás y ejemplos! 2. Complejidad de

Más detalles

1. Cuál es el número total máximo de nodos que tiene un árbol binario de N niveles? a. N 2-1 b. 2 N+1-1 c. 2 N d. 2 N+1 i.

1. Cuál es el número total máximo de nodos que tiene un árbol binario de N niveles? a. N 2-1 b. 2 N+1-1 c. 2 N d. 2 N+1 i. 1. Cuál es el número total máximo de nodos que tiene un árbol binario de N niveles? a. N - 1 b. N1-1 c. N d. N1 i.. Dado el siguiente árbol binario: raiz Q K T D M R Y B J P W N a. Cuáles son los antecesores

Más detalles

Tema: Algoritmos para la ruta más corta en un Grafo.

Tema: Algoritmos para la ruta más corta en un Grafo. Programación IV. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Algoritmos para la ruta más corta en un Grafo. Objetivos Específicos Definir el concepto de camino

Más detalles

NIVEL 17: ESTRUCTURAS NO LINEALES

NIVEL 17: ESTRUCTURAS NO LINEALES 1 NIVEL 17: ESTRUCTURAS NO LINEALES Grafos, definiciones y tipos de problemas 2 Agenda Qué son? Formalismo abstracto de los grafos dirigido Conceptos Ejemplo: Red de distribución de agua Caminos y Ciclos

Más detalles

Estructuras de Datos Orientadas a Objetos. Pseudocódigo y aplicaciones en C#.NET. Capítulo 9.- Grafos

Estructuras de Datos Orientadas a Objetos. Pseudocódigo y aplicaciones en C#.NET. Capítulo 9.- Grafos Capítulo 9.- Grafos Cuestionario 9.1 Se pueden representar los nodos de un grafo como un conjunto de elementos 9.2 Se pueden representar los arcos de un grafo como un conjunto de tuplas 9.3 Los grafos

Más detalles

Ciclos y grafos acíclicos

Ciclos y grafos acíclicos Ciclos y grafos acíclicos Domingo Gómez Pérez Domingo Gómez Pérez Ciclos y grafos acíclicos 1 / 23 Definición de ciclos Figura: Figura con ciclos Definición de camino Un camino en un grafo es una lista

Más detalles

Matemáticas Básicas para Computación

Matemáticas Básicas para Computación Matemáticas Básicas para Computación MATEMÁTICAS BÁSICAS PARA COMPUTACIÓN 1 Sesión No. 10 Nombre: Grafos Objetivo: Al término de la sesión el participante conocerá los elementos que integran los grafos,

Más detalles

DII. 1. (5 Puntos) Dada la clase Punto con la siguiente interfaz ya implementada

DII. 1. (5 Puntos) Dada la clase Punto con la siguiente interfaz ya implementada DII Asignatura: LS1158 Metodología y Técnicas de la Programación II Cuatrimestre: 2º Examen: Final Convocatoria: Ordinaria Grupo: 1T2-1T3 Curso: 2004/05 Fecha: 31/V/05 1. (5 Puntos) Dada la clase Punto

Más detalles

Metodología y Tecnología de la Programación II Escuela Politécnica Superior, UAM,

Metodología y Tecnología de la Programación II Escuela Politécnica Superior, UAM, Metodología y Tecnología de la Programación II Escuela Politécnica Superior, UAM, 2009 2010 Conjunto de Prácticas no. 3 Fecha de entrega: Grupo del Lunes: 11 de Enero. Grupos del Martes: 15 de Diciembre.

Más detalles

02 de septiembre de 2013-06 de septiembre de 2013

02 de septiembre de 2013-06 de septiembre de 2013 02 de septiembre de 2013-06 de septiembre de 2013 2 lunes 3 martes 4 miércoles 5 jueves 6 viernes 1 17/04/2013 10:23 09 de septiembre de 2013-13 de septiembre de 2013 9 lunes 10 martes 11 miércoles 12

Más detalles

Recorridos de grafos

Recorridos de grafos Recorridos de grafos Introducción 2 Recorrido en profundidad 3 Recorrido en anchura 9 Ordenación topológica 12 J. Campos - C.P.S. Esquemas algorítmicos - Grafos Pág. 1 Introducción Justificación de la

Más detalles

INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS.

INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS. INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS.7 GRAFOS CONEXOS7 ÁRBOLES..7 BOSQUES DE ÁRBOLES...8 RECORRIDO DE UN GRAFO..8

Más detalles

Tema 10- Grafos. Objetivos:

Tema 10- Grafos. Objetivos: Tema - Grafos Duración: 2 semanas aprox. Índice general:. Relaciones entre los Datos de una Colección 2. Conceptos básicos sobre Grafos. Representación de un Grafo: Matriz y Listas de Adyacencia. Implementación

Más detalles

Estructuras de Datos y Algoritmos. Grafos

Estructuras de Datos y Algoritmos. Grafos Estructuras de Datos y Algoritmos Grafos Definiciones Grafo modelo para representar relaciones entre elementos de un conjunto. Grafo: (V,E), V es un conjunto de vértices o nodos, con una relación entre

Más detalles

Grado en Ingeniería de Tecnologías y Servicios de Telecomunicación Programación II. PRÁCTICA 1: Utilización del concepto de Tipo Abstracto de Dato

Grado en Ingeniería de Tecnologías y Servicios de Telecomunicación Programación II. PRÁCTICA 1: Utilización del concepto de Tipo Abstracto de Dato PRÁCTICA 1: Utilización del concepto de Tipo Abstracto de Dato OBJETIVOS El objetivo de esta práctica es utilizar los conceptos aprendidos en las clases de teoría sobre los Tipos Abstractos de Datos (TAD)

Más detalles

CALENDARIO AÑO 2016 PICO Y PLACA AUTOMOVILES SERVICIO ESPECIAL PICO Y PLACA TAXIS

CALENDARIO AÑO 2016 PICO Y PLACA AUTOMOVILES SERVICIO ESPECIAL PICO Y PLACA TAXIS JULIO VIERNES 1 9 7-8 7-8 5-6 1-3-5-7-9 SABADO 2 8 9-0 9-0 7-8 NO APLICA DOMINGO 3 NO APLICA NO APLICA NO APLICA NO APLICA NO APLICA LUNES 4 FESTIVO FESTIVO FESTIVO FESTIVO FESTIVO MARTES 5 1 3-4 3-4 1-2

Más detalles

CALENDARIO AÑO 2016 PICO Y PLACA AUTOMOVILES SERVICIO ESPECIAL PICO Y PLACA TAXIS

CALENDARIO AÑO 2016 PICO Y PLACA AUTOMOVILES SERVICIO ESPECIAL PICO Y PLACA TAXIS ENERO VIERNES 1 FESTIVO FESTIVO FESTIVO FESTIVO FESTIVO SABADO 2 3 7-8 7-8 5-6 NO APLICA DOMINGO 3 NO APLICA NO APLICA NO APLICA NO APLICA NO APLICA LUNES 4 4 9-0 9-0 7-8 NO APLICA MARTES 5 5 1-2 1-2 9-0

Más detalles

Grafos: algunas definiciones

Grafos: algunas definiciones Grafos: algunas definiciones Un grafo dirigido G es un par (V, E), donde V es un conjunto finito de nodos (o vértices) y E es una relación binaria sobre V. Un grafo no dirigido G es un par (V, E), donde

Más detalles

Teoría de Grafos. Herramientas de programación para procesamiento de señales

Teoría de Grafos. Herramientas de programación para procesamiento de señales Teoría de Grafos Herramientas de programación para procesamiento de señales Indice Nociones básicas: Definiciones Ejemplos Propiedades Nociones avanzadas: Grafos planares Árboles Representación en computadora

Más detalles

3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS.

3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS. 3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS 3.1.- CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS. 3.2.- BOSQUES Y COMPONENTES CONEXOS. NEXON LENIN CEFERINO POMPOSO Los árboles son particularmente

Más detalles

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Contenidos: 1. Definición de clases 2. Implementación de los métodos 3. Constructores y destructores 4. Objetos

Más detalles

Gráficas. Las relaciones que resultan de estas conexiones nos llevan a preguntas como:

Gráficas. Las relaciones que resultan de estas conexiones nos llevan a preguntas como: GRÁFICAS Gráficas Muchas aplicaciones computacionales involucran no solo un conjunto de elementos sino también conexiones entre pares de elementos. Las relaciones que resultan de estas conexiones nos llevan

Más detalles

Arboles Binarios de Búsqueda en C++

Arboles Binarios de Búsqueda en C++ Arboles Binarios de Búsqueda en C++ por CCG/Mayo-2014 Tema de Arboles Binarios de Búsqueda, como un poco de teoría para su mejor entendimiento seguidamente mostrare la implementación en lenguaje de programación

Más detalles

Manual del Usuario para el programa de reconocimiento de caracteres.

Manual del Usuario para el programa de reconocimiento de caracteres. Manual del Usuario para el programa de reconocimiento de caracteres. Instalación. El software no tiene programa de instalación, solo es necesario copiar el ejecutable al directorio donde usted desee. Y

Más detalles

Definiciones: conjuntos, grafos, y árboles. Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002

Definiciones: conjuntos, grafos, y árboles. Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002 Definiciones: conjuntos, grafos, y árboles Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002 1 Conjuntos (sets) y Grafos (graphs) Un Conjunto es una colección de objetos distintos. No

Más detalles

Estructuras de datos Listas y árboles

Estructuras de datos Listas y árboles Estructuras de datos Listas y árboles Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Listas y árboles p. 1 Listas Listas son estructuras un poco más avanzadas que puros arreglos, como

Más detalles

Práctico 2: Funciones y Punteros en C La teoría general para este práctico puede consultarse en los Capítulos 4 y 5 Notas de Clase

Práctico 2: Funciones y Punteros en C La teoría general para este práctico puede consultarse en los Capítulos 4 y 5 Notas de Clase Práctico 2: Funciones y Punteros en C La teoría general para este práctico puede consultarse en los Capítulos 4 y 5 Notas de Clase 1. Ejecute el siguiente programa y diga que hace la función calcula: #include

Más detalles

Un grafo G = (V, E) se dice finito si V es un conjunto finito.

Un grafo G = (V, E) se dice finito si V es un conjunto finito. 1 Grafos: Primeras definiciones Definición 1.1 Un grafo G se define como un par (V, E), donde V es un conjunto cuyos elementos son denominados vértices o nodos y E es un subconjunto de pares no ordenados

Más detalles

Redes de Computadoras. Obligatorio

Redes de Computadoras. Obligatorio Redes de Computadoras Obligatorio 3-2018 Facultad de Ingeniería Instituto de Computación Departamento de Arquitectura de Sistemas Nota previa - IMPORTANTE Se debe cumplir íntegramente el Reglamento del

Más detalles

Parte de Algoritmos de la asignatura de Programación Master de Bioinformática. Grafos

Parte de Algoritmos de la asignatura de Programación Master de Bioinformática. Grafos Parte de Algoritmos de la asignatura de Programación Master de Bioinformática Grafos Web asignatura: http://dis.um.es/~domingo/algbio.html E-mail profesor: domingo@um.es Transparencias preparadas a partir

Más detalles

Algoritmos de búsqueda en grafos II

Algoritmos de búsqueda en grafos II II Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 12 de febrero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Búsqueda en grafos II 12 de febrero de 2018 1 / 26 1 Algoritmos de búsqueda en grafos Dr.

Más detalles

Descripción del problema:

Descripción del problema: PROBLEMA DEL AGENTE VIAJERO USANDO BÚSQUEDA TABU PROYECTO FINAL PROGRAMACIÓN CIENTIFICA ANGELES BAEZ OLVERA 4 JUNIO 2009 Descripción del problema: El problema del agente viajero o TSP como se le conoce

Más detalles

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año - Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En

Más detalles

Estructura de Datos. Estructuras de Datos no lineales : Árboles

Estructura de Datos. Estructuras de Datos no lineales : Árboles Estructura de Datos Estructuras de Datos no lineales : Árboles Definiciones de Árbol En términos matemáticos, un árbol es cualquier conjunto de puntos, llamados vértices, y cualquier conjunto de pares

Más detalles

8. Vectores (arrays)

8. Vectores (arrays) 8. Vectores (arrays) Fundamentos de Informática Especialidad de Electrónica 2009-2010 Ismael Etxeberria Agiriano 16/12/2009 Índice 8. Vectores (arrays) 1. Números aleatorios 2. Serie ordenada 3. Números

Más detalles

Apuntes de Teórico de Programación 3. Apuntes de Teórico PROGRAMACIÓN 3. Greedy. Versión 1.1

Apuntes de Teórico de Programación 3. Apuntes de Teórico PROGRAMACIÓN 3. Greedy. Versión 1.1 Apuntes de Teórico PROGRAMACIÓN 3 Greedy Versión 1.1 1 Índice Índice... Introducción... 3 Ejemplo 1 (problema de las monedas)... 3 Ejemplo (problema de la mochila)... 4 Aplicaciones del método Greedy a

Más detalles

Estructura Selectiva Múltiple

Estructura Selectiva Múltiple Estructura Selectiva Múltiple Con frecuencia en la práctica se presentan más de dos elecciones posibles de una cierta condición. La estructura selectiva múltiple se utiliza para este tipo de problemas,

Más detalles

Entregable 4.- RESUELTO. Semana del 5 de octubre al 11 de octubre

Entregable 4.- RESUELTO. Semana del 5 de octubre al 11 de octubre Entregable 4.- RESUELTO Semana del 5 de octubre al 11 de octubre 1. Resuelve los siguientes sistemas de ecuaciones 1. 2x = 5 en Z 7 3x = 1 en Z 5 x = 3 en Z 8 2. 2x = 1 en Z 6 x = 4 en Z 11 3x = 2 en Z

Más detalles

Taller de grafs: rutes, mapes i xarxes socials

Taller de grafs: rutes, mapes i xarxes socials Taller de grafs: rutes, mapes i xarxes socials Cristina Chiralt y Fernando Hernando Universidad Jaume I e Instituto Universitario de Matemáticas y sus Aplicaciones de Castellón Grado de Matemática Computacional

Más detalles

Capítulo 5 Introducción a la teoría de grafos

Capítulo 5 Introducción a la teoría de grafos Capítulo 5 Introducción a la teoría de grafos 5.1. Terminología básica y tipos de grafos Una primera aproximación a la teoría de grafos la tenemos cuando observamos un mapa de carreteras: ciudades (vértices)

Más detalles

Grafos (principiantes) - Parte I

Grafos (principiantes) - Parte I Grafos (principiantes) - Parte I Juan Cruz Piñero Facultad de Informática Universidad Nacional del Comahue Training Camp 2017 Juan Cruz Piñero (FAI - UNCo) Grafos (Principiantes) Parte I TC 2017 1 / 39

Más detalles

Apéndice A: Manual de Usuario

Apéndice A: Manual de Usuario Apéndice A: Manual de Usuario 59 Apéndice A: Manual de Usuario En este apartado se muestra el manual del Simulador de Algoritmos. El manal comprende desde la instalación del simulador hasta el funcionamiento

Más detalles

Hamilton, Euler y Dijkstra

Hamilton, Euler y Dijkstra UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIAS ESCUELA DE COMPUTACION Matemáticas Discretas III (Cód. 6108) Práctica # 2 Hamilton, Euler y Dijkstra 1. Sea G = un multigrafo no dirigido donde

Más detalles

Metodología y Tecnología de la Programación. I.T. Informática de Gestión

Metodología y Tecnología de la Programación. I.T. Informática de Gestión ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA PROGRAMAS, MÉTODOS Y CRITERIOS DE EVALUACIÓN A APLICAR DURANTE EL PROCESO DE EXTINCIÓN DEL PLAN 1999 Metodología y Tecnología de la Programación I.T. Informática

Más detalles

2. Desarrolla una especificación informal genérica para el TAD árbol binario. Incluir operaciones para crear y modificar el árbol.

2. Desarrolla una especificación informal genérica para el TAD árbol binario. Incluir operaciones para crear y modificar el árbol. 1. Escribe una especificación informal para los distintos métodos de ordenación que conozcas. La especificación debe ser genérica, es decir trabajar con elementos de cualquier tipo. En qué se diferencia

Más detalles

ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES

ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOL Un árbol es un grafo no dirigido, conexo, sin ciclos (acíclico), y que no contiene aristas

Más detalles

NIVEL 17: ESTRUCTURAS NO LINEALES

NIVEL 17: ESTRUCTURAS NO LINEALES 1 NIVEL 17: ESTRUCTURAS NO LINEALES Recorridos y Algorítmica de Grafos 2 Agenda Recorridos de grafos Recorridos Planos Recorridos en profundidad Recorridos por niveles Recorridos Heurísticos Algorítmica

Más detalles

Guía práctica de estudio 7

Guía práctica de estudio 7 Guía práctica de estudio 7 Algoritmos de Grafos. Parte 2. Elaborado por: Revisión: Ing. Laura Sandoval Montaño Facultad de Ingeniería U.N.A.M. Guía Práctica 7 Estructura de datos y Algoritmos II Algoritmos

Más detalles

Práctica 2: Estructuras/Uniones/Campos de bits

Práctica 2: Estructuras/Uniones/Campos de bits Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática Aplicada Práctica 2: Estructuras/Uniones/Campos de bits Contenido: Esta

Más detalles

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema

Más detalles

Soluciones a los ejercicios planteados en el curso

Soluciones a los ejercicios planteados en el curso Soluciones a los ejercicios planteados en el curso Unidad 3 - Algoritmos recursivos Lección 2 Mecanismo de recursividad Escribe un algoritmo recursivo que calcule el elemento de cardinal más elevado de

Más detalles

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año - Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En

Más detalles

El TAD Grafo. El TAD Grafo

El TAD Grafo. El TAD Grafo Objetivos! Estudiar la especificación del TAD Grafo! Presentar diferentes alternativas de implementación! Conocer los algoritmos más importantes de manipulación de grafos Contenidos.1 Conceptos. Especificación

Más detalles

La clase Grafo. 4 Algoritmos de recorrido de grafos. La clase Vertice. Tema 9: GRAFOS Segunda Parte Estructuras de Datos y Algoritmos Curso 2002/03

La clase Grafo. 4 Algoritmos de recorrido de grafos. La clase Vertice. Tema 9: GRAFOS Segunda Parte Estructuras de Datos y Algoritmos Curso 2002/03 La clase Grafo public class Grafo { Tema 9: GRAFOS Segunda Parte Estructuras de Datos y Algoritmos Curso 00/03 private static final int TAMANYO_INICIAL=0; private Vertice tabla []; private int numvertices;

Más detalles

Multiplicación de matrices simétricas

Multiplicación de matrices simétricas Multiplicación de matrices simétricas La traspuesta de una matriz A n n es definida como una matriz A T n n tal que A T [i, j] =A[j, i] paracadai, j 2{1,...,n} Además, una matriz A es simétrica si A =

Más detalles