OBJETIVOS ÍNDICE BIBLIOGRAFÍA

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

Download "OBJETIVOS ÍNDICE BIBLIOGRAFÍA"

Transcripción

1 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 resolver diferentes variantes del problema de encontrar el camino mínimo sobre un grafo Algoritmos para resolver el problema de encontrar el árbol de extensión de coste mínimo sobre un grafo 2 ÍNDICE 1. Introducción 2. Conceptos Básicos 3. Implementación de grafos. Recorridos de grafos 5. Búsqueda del camino con peso mínimo: algoritmo de Dijkstra 6. Otros problemas de caminos en GAD Ordenación topológica Búsqueda de caminos mínimos 7. Problema de obtención de árboles de extensión sobre grafos no dirigidos Algoritmos de Prim y Kruskal BIBLIOGRAFÍA Básica: Weiss, M.A. Estructuras de datos en Java. Adisson-Wesley, Capítulos 1 y 23 Otros: T.H. Cormen, C.E. Leiserson, R.L. Rivest. Introduction to Algorithms. MIT Press, Capítulos 5 y 23. Aho A.V., Hopcroft J.E., Ullman J.E. Estructuras de datos y Algoritmos. Addison-Wesley, Capítulos 6 y 7.

2 1. INTRODUCCIÓN CONCEPTOS BÁSICOS Un grafo permite representar relaciones binarias entre los elementos de un conjunto. Ejemplos: Rutas de transporte Envío de correo electrónico Grafos dirigidos y no dirigidos Grafos etiquetados Relaciones de incidencia y adyacencia Caminos Subgrafos Conectividad Árboles y Grafos Grafos Dirigidos (DiGrafos) Grafos no dirigidos Un grafo dirigido (g.d.) es un par G=(V,E) V es un conjunto finito de vértices (nodos) E es un conjunto de arcos (o aristas). Un arco es un par ordenado(u,v) con u,v V Un grafo no dirigido (G.N.D) es un par G=(V,E) V es un conjunto finito de vértices (nodos) E es un conjunto de arcos (aristas). Un arco es un par NO ordenado (u,v) con u,v V, u v V={1,2,3,,5,6 V={1,2,3,,5,6 E={(1,2),(2,2),(2,),(2,5),(,1), (,5),(5,),(6,3) E={(1,2),(1,5),(2,5),(3,6)

3 Grafos Etiquetados Relaciones de Incidencia y Adyacencia Un grafo etiquetado es un grafo G=(V,E) sobre el que se define una función f:e->a, dónde A es un conjunto cuyas componentes se llaman etiquetas. Un grafo ponderado (o con pesos o costes) es un grafo etiquetado con números reales (A R) Sea G=(V,E) un grafo dirigido. Si (u,v) E, decimos que incide desde u (sale de..) e incide en v (llega a..). Ejemplo: vértice Relaciones de Incidencia y Adyacencia (cont.) Relaciones de Incidencia y Adyacencia (cont.) Sea G=(V,E) un grafo no dirigido. Si (u,v) E, decimos que incide sobre u y v. Ejemplo: vértice 2 Sea G=(V,E) un grafo. Si (u,v) E, decimos que el vértice v es adyacente al u. La relación es simétrica en grafos no dirigidos 2 es adyacente a 1 1 NO es adyacente a 2 2 es adyacente a 1 1 es adyacente a 2

4 Relaciones de Incidencia y Adyacencia (cont.) Relaciones de Incidencia y Adyacencia (cont.) Llamaremos grado de un vértice en un g.n.d. al nº de arcos que inciden sobre él. El grado de un vértice en un g.d. es el nº de arcos que salen de él (grado de salida) más el nº de arcos que entran (grado de entrada). El grado de 2 es 2 Grado de entrada del 2=2, Grado de salida del 2 =3 Grado de 2= Relaciones de Incidencia y Adyacencia (cont.) Caminos El grado de un grafo es el del vértice de máximo grado. Un camino de longitud k desde u a u en un grafo G=(V,E) es una secuencia de vértices v 0,v 1,..,v k tal que v o =u y v k =u y i:1..k:(v i-1,v i ) E. La longitud del camino es el número de arcos. La longitud del camino con pesos es la suma d elos costes de las aristas que forman el camino Si hay un camino P desde u hasta u, decimos que u es alcanzable desde u via P. El grado de este grafo es 5

5 Caminos (cont.) Caminos (cont.) Un camino es simple si todos sus vértices son distintos. En un g.d. un camino <v 0,v 1,..,v k > forma un ciclo si v 0 =v k y el camino contiene al menos un arco. El ciclo es simple si los vértices son distintos Un bucle es un ciclo de longitud 1 <1,2,5,> es un camino simple de longitud 3 <2,5,,5> no es un camino simple <1,2,5,> es un ciclo Caminos (cont.) Ejercicio En un g.n.d. un camino <v 0,v 1,..,v k > forma un ciclo si v 0 =v k y los v i son distintos. Un grafo sin ciclos diremos que es acíclico (GDA) Sea G = (V,E) un Grafo dirigido con pesos V={v 0,v 1, v 2, v 3, v, v 6, v 6, E={ (v 0,v 1, 2), (v 0,v 3, 1), (v 1,v 3, 3), (v 1,v, 10), (v 3,v, 2), (v 3,v 6, ), (v 3,v 5, 8), (v 3,v 2, 2), (v 2,v 0, ), (v 2,v 5, 5), (v,v 6, 6), (v 6,v 5, 1) Se pide: 1.- V y E 2.- Vértices adyacentes a cada v i 3.- Grado de cada v i y del Grafo.- Caminos desde v 0 al resto de Vértices, su longitud y su longitud con pesos 5.- Vértices alcanzables desde v Caminos mínimos desde v 0 al resto de Vértices 7.- Tiene ciclos?

6 Subgrafos Conectividad de un grafo Un grafo G =(V,E ) es un subgrafo de G=(V,E) si V V y E E. Dado un conjunto V V, el subgrafo de G inducido por V es G =(V,E ):E ={(u,v) E:u,v V Un g.n.d. es conexo si cualquier par de vértices están conectados por un camino. Las componentes conexas de un grafo son las clases de equivalencia en V definidas por la relación es alcanzable desde.. Ejemplo: subgrafo inducido por {1,2,3, Conectividad de un grafo (cont.) Árboles Un g.d. es fuertemente conexo si cualquier vértice es alcanzable desde cualquier otro. Las componentes fuertemente conexas de un grafo son las clases de equivalencia en V definidas por la relación son mutuamente alcanzables Un bosque es un grafo acíclico no dirigido. Un grafo acíclico, no dirigido y conexo es un árbol (libre). (a) Árbol (b) Bosque (c) Grafo

7 Árboles Árboles con raíz Teorema: Sea G=(V,E) un g.n.d. Las siguientes afirmaciones son equivalentes: Un Árbol con raíz es un árbol con un vértice distinguido denominado raíz. G es un árbol (libre) Cualquier par de vértices en G están conectados por un único camino simple G es conexo y E = V -1 G es acíclico pero si añadimos un arco a E, el grafo resultante contiene un ciclo Dem. Pág [Cormen,90] Árbol de recubrimiento de un gnd 2. REPRESENTACIÓN DE GRAFOS Un árbol de recubrimiento del grafo G=(V,E) es un árbol libre T=(V,E ) tal que V =V y E E Ejemplo: 8 7 b c d 2 9 Peso total=37 a 11 i 1 e 7 8 h g f 10 Listas de Adyacencia: Un grafo G=(V,E) se representa como un vector de listas de vértices indexado por vértices. G[v] es una lista de los vértices emergentes y/o incidentes de/a v V. Memoria: O( V + E ) Tiempo de acceso: O(Grado(G)) Matriz de Adyacencias: Un grafo G=(V,E) se representa como una matriz indexada por vértices de booleanos. La componente G[u,v] es true si (u,v) E, sino G[u,v]=false. Memoria: O( V 2 ) Tiempo de acceso: O(1)

8 Ejemplos Implementación de grafos Basada en listas de adyacencia: Implementación básica: Grafos sin pesos Vértices numerados desde 0 hasta V -1 Implementación de grafos ponderados La clase Arista Los vértices no están numerados desde 0 hasta V -1 Utilización de un diccionario (tabla hash) La clase Vertice Implementación básica Programa de prueba public class Grafo { private static final int TAMANYO_INICIAL=10; private Lista tabla []; private int numvertices; public Grafo() { numvertices=0; tabla=new Lista[TAMANYO_INICIAL]; public void insarista (int orig, int dest) { if (tabla[orig]==null) tabla[orig]=new Lista(); tabla[orig].insertar(new Integer(dest)); public String tostring() { String s=""; for (int i=0; i<tamanyo_inicial; i++) if (tabla[i]!=null) s+="or:"+i+"ady="+tabla[i].tostring()+"\n"; return s; public class pruebagrafo { public static void main (String args[]) { BufferedReader in=new BufferedReader(new InputStreamReader(System.in)); Grafo GM=new Grafo(); System.out.println("Escribe pares de vértices separados por blancos:"); try { String linea=in.readline(); while (linea.length()!=0){ StringTokenizer st=new StringTokenizer(linea); int orig=integer.parseint(st.nexttoken()); int dest=integer.parseint(st.nexttoken()); GM.insArista(orig,dest); linea=in.readline(); catch (IOException e) { System.out.println("Grafo leído:"); System.out.println(GM.toString());

9 Ejemplo de ejecución Ejercicio 1 Escribe pares de vértices separados por blancos: Grafo leído: Orig:1 Ady= 2 Orig:2 Ady= 5 Orig:3 Ady= 6 5 Orig: Ady= 2 Orig:5 Ady= Orig:6 Ady= 6 Definir los siguientes métodos en la clase Grafo: Método constructor para crear el grafo a partir de la información de arcos leída desde un fichero Método para consultar el número total de arcos de un grafo Método para consultar el grado de un vértice dado (grado de salida si el grafo es dirigido) Método para consultar el grado del grafo (grado de salida si el grafo es dirigido) Método para comprobar si el grafo está vacío Método para comprobar si un determinado arco pertenece al grafo 33 3 Implementación de un grafo ponderado La clase Arista public class Grafo { private static final int TAMANYO_INICIAL=10; private Lista tabla []; private int numvertices; public Grafo() { numvertices=0; tabla=new Lista[TAMANYO_INICIAL]; public void insarista (int orig, int dest, int coste) { if (tabla[orig]==null) tabla[orig]=new Lista(); tabla[orig].insertar(new Arista(dest,coste)); public String tostring() { String s=""; for (int i=0; i<tamanyo_inicial; i++) if (tabla[i]!=null) s+="or:"+i+"ady="+tabla[i].tostring()+"\n"; return s; public class Arista { // atributos: el vértice destino y el coste del arco private int dest; private int coste; public Arista(int v, int c) { dest=v;coste=c; public String tostring(){ return dest+ ("+coste+")";

10 Implementación de grafos en Java La clase Grafo La clase Arista La clase Vértice Los nombres de los vértices... En general, los vértices tendrán nombres asociados, típicamente cadenas de caracteres: Se mantendrá una tabla hash con la codificación de cada vértice Los códigos se asignan internamente con valores entre 0 y el número de vértices menos 1, conforme se va leyendo el grafo Grafo Es un vector de... Vértices Tiene una lista de... Aristas Ejemplo: D C 10 A B 12 D B 23 A D 87 E D 3 B E 11 C A 19 DICCIONARIO D 0 C 1 A 2 B 3 E La implementación del diccionario La clase Vertice class ElementoHash implements Hashable { String nombre; int codigo; public class Vertice { String nombre; //el nombre del vértice Lista ady; // la lista de vértices adyacentes (aristas) public ElementoHash (String nom) { nombre=nom; public int hash () { return ExploracionTablaCuadratica.hash(nombre); public boolean equals (Object x) { return nombre.equals( ((ElementoHash)x).nombre ); public Vertice(String v) { nombre=v; ady=new Lista(); public String tostring() { return ady.tostring();

11 La clase Grafo El método constructor de Grafo public class Grafo { private static final int TAMANYO_INICIAL=10; private Vertice tabla []; private int numvertices; private TablaHash diccio; public Grafo() { numvertices=0; tabla=new Vertice[TAMANYO_INICIAL]; diccio=new ExploracionTablaCuadratica(); public Grafo() {... public insarista (String orig,string dest,int cost) {... public String tostring() { La operación insarista La codificación de los vértices public void insarista (String orig, String dest, int cost) { int codorig=insnodo(orig); int coddest=insnodo(dest); Lista aux=tabla[codorig].ady; aux.insertar(new Arista(codDest,cost)); private int insnodo (String nomvertice) { ElementoHash aux = new ElementoHash(nomVertice); ElementoHash res; try { res= (ElementoHash) diccio.buscar(aux); return res.codigo; //Si ya está en el diccionario devolvemos su código catch (ElementoNoEncontrado e) { // Si no está, la añadimos al diccionario e incrementamos numvertices // Si fuera necesario se duplica la tabla de vértices aux.codigo=numvertices; diccio.insertar(aux); if (numvertices==tabla.length) duplicarvectortabla(); tabla[numvertices]=new Vertice(aux.nombre); return numvertices++;

12 Ejercicio 2 Repetir el ejercicio número 1 sobre la implementación completa de grafo (usando el diccionario) Ejercicio 3: definir el método tostring en Grafo de forma que se muestren siempre los Vértices mediante sus etiquetas, y no con la representación numérica interna public String tostring() { String elgrafo = ; for (int i=0;i<=numvertices;i++) { elgrafo+= Vértice: +tabla[i].nombre+ con Adyacentes ; Lista adyacentesai = tabla[i].ady; adyacentesai.inicio(); while (!adyacentesai.esfin()) { Arista actual = (Arista)adyacentesAI.recupera(); int numactual = actual.dest; String nombreactual = tabla[numactual].nombre; elgrafo+= ( +nombreactual+, +actual.coste+ ), ; elgrafo+= \n ; return elgrafo; 5 6

Tema 14 Grafos y su Implementación en Java. Parte I. Objetivos. Bibliografía

Tema 14 Grafos y su Implementación en Java. Parte I. Objetivos. Bibliografía Tema Grafos y su Implementación en Java Tema Grafos y su Implementación en Java Parte I Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Índice general:.

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

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

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

Grafos. Algoritmos y Estructuras de Datos III

Grafos. Algoritmos y Estructuras de Datos III Grafos Algoritmos y Estructuras de Datos III Grafos Un grafo G = (V, X ) es un par de conjuntos, donde V es un conjunto de puntos o nodos o vértices y X es un subconjunto del conjunto de pares no ordenados

Más detalles

2007 Carmen Moreno Valencia

2007 Carmen Moreno Valencia Tema VIII. Grafos Grafos 1 2007 Carmen Moreno Valencia 1. Grafos, digrafos y multigrafos 2. Grafos eulerianos 3. Matrices de adyacencia e incidencia 4. Exploración de grafos pesados 1. Grafos, digrafos

Más detalles

Tema: Los Grafos y su importancia para la optimización de redes.

Tema: Los Grafos y su importancia para la optimización de redes. Tema: Los Grafos y su importancia para la optimización de redes. Qué son los Grafos? Un grafo es una dupla G= {X,U}, donde X es un conjunto finito y no vacio de elementos llamados vértices y U es el conjunto

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

En la fig. 1 se representa el grafo, G=(V,A) donde: V = {1, 2, 3, 4, 5, 6} A = { {1,2}, {1,3}, {1,5}, {3}, {3,4}, {4,5}, {5,6} }

En la fig. 1 se representa el grafo, G=(V,A) donde: V = {1, 2, 3, 4, 5, 6} A = { {1,2}, {1,3}, {1,5}, {3}, {3,4}, {4,5}, {5,6} } Unidad 1 Parte 1 - Teoría de Grafos Introducción En este capítulo veremos la noción matemática de grafo y propiedades de los mismos. En capítulos subsiguientes veremos las estructuras de datos utilizadas

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

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

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

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo.

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo. Análisis de Algoritmos Ingeniería Informática, EPS-UAM Información general Organización del curso: 13-15 (mínimo-máximo) semanas docentes: 30-33 clases teóricas. 9-12 clases de problemas 26-30 clases prácticas

Más detalles

GRAFOS. Prof. Ing. M.Sc. Fulbia Torres

GRAFOS. Prof. Ing. M.Sc. Fulbia Torres ESTRUCTURAS DE DATOS 2006 Prof. DEFINICIÓN Un grafo consta de un conjunto de nodos(o vértices) y un conjunto de arcos (o aristas). Cada arco de un grafo se especifica mediante un par de nodos. Denotemos

Más detalles

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) 1 DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problema de Encontrar la Ruta más Corta 2 Se requiere llegar de

Más detalles

Árboles. Un grafo no dirigido es un árbol si y sólo si existe una ruta unica simple entre cualquiera dos de sus vértices.

Árboles. Un grafo no dirigido es un árbol si y sólo si existe una ruta unica simple entre cualquiera dos de sus vértices. ÁRBOLES Árboles Un grafo conectado que no contiene circuitos simples. Utilizados desde 1857, por el matemático Ingles Arthur Cayley para contar ciertos tipos de componentes químicos. Un árbol es un grafo

Más detalles

TEORIA DE GRAFOS. Estructuras Discretas Ing. Jenny Paredes Aguilar

TEORIA DE GRAFOS. Estructuras Discretas Ing. Jenny Paredes Aguilar TEORIA DE GRAFOS Estructuras Discretas Ing. Jenny Paredes Aguilar INTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

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

Guía - Taller # 2 (JAVA)

Guía - Taller # 2 (JAVA) CEET - Distrito Capital Programa de Formación: ADSI 150752 TRIMESTRE VI Conocimiento de Conocimiento: Aplicar diversos estilos de Programación usando herramientas para Desarrollo Web Instructor: Ing. Espec.

Más detalles

Objetivos formativos de Matemática Discreta. Tema 1: Conjuntos, aplicaciones y relaciones

Objetivos formativos de Matemática Discreta. Tema 1: Conjuntos, aplicaciones y relaciones Objetivos formativos de Matemática Discreta Para cada uno de los temas el alumno debe ser capaz de hacer lo que se indica en cada bloque. Además de los objetivos que se señalan en cada tema, se considera

Más detalles

NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS

NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS 1 NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS Árboles Binarios y Árboles Binarios Ordenados 2 Contenido Árboles binarios Iteradores Árboles binarios ordenados 3 Árboles binarios Algunas definiciones para

Más detalles

Caminos y Flujos optimales. Introducción a la Investigación de Operaciones 2007

Caminos y Flujos optimales. Introducción a la Investigación de Operaciones 2007 Caminos y Flujos optimales Introducción a la Investigación de Operaciones 2007 Contenido Definiciones básicas. Conexidad. Clausura transitiva. Esqueletos y caminos optimales. Redes. Flujos. Algoritmo de

Más detalles

Francis Guthrie Planteo el problema de los cuatro colores, después de colorear el mapa de Inglaterra 9/15/2015 3

Francis Guthrie Planteo el problema de los cuatro colores, después de colorear el mapa de Inglaterra 9/15/2015 3 INTRODUCCION GRAFOS La Teoria de Grafos nace del análisis sobre una inquietud presentada en la isla Kueiphof en Koenigsberg (Pomerania) ya que el río que la rodea se divide en dos brazos. Sobre los brazos

Más detalles

Grafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30

Grafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30 Grafos AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Grafos / 0 Objetivos Al finalizar este tema tendréis que: Conocer la terminología básica de la teoría de grafos. Pasar

Más detalles

Ejercicios de Programación Tema 7. Programación Orientada a Objetos

Ejercicios de Programación Tema 7. Programación Orientada a Objetos Ejercicios de Programación Tema 7. Programación Orientada a Objetos 22 de diciembre de 2013 1. Haz una clase llamada Agenda para manejar una agenda de teléfonos. Los objetos instanciados a partir de esa

Más detalles

EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas

EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas Apellidos Nombre Firma NIA Grupo EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas Pregunta 1 (0,5 puntos).- Indicar si las siguientes afirmaciones

Más detalles

Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos.

Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos. Matemática Discreta y Lógica 2 1. Árboles Árboles Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos. Como un lazo es un ciclo de longitud 1, un árbol

Más detalles

1. Cuántas sentencias hay en la secuencia principal del siguiente programa?

1. Cuántas sentencias hay en la secuencia principal del siguiente programa? 1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.

Más detalles

Metodología y Tecnología de la Programación

Metodología y Tecnología de la Programación Tema 4. Abstracción procedimental y de datos 1. Cuál es el error del siguiente programa? import java.util.scanner; class Respuesta{ static Scanner leer=new Scanner(System.in); int valor = lectura(); System.out.println(valor);

Más detalles

Tema 4. Excepciones en Java

Tema 4. Excepciones en Java Programación en Java Tema 4. Excepciones en Java Luis Rodríguez Baena Facultad de Informática Excepciones (I) Permiten la captura de errores en tiempo de ejecución. El control de excepciones permite extraer

Más detalles

Algoritmos para determinar Caminos Mínimos en Grafos

Algoritmos para determinar Caminos Mínimos en Grafos Problemas de camino mínimo Algoritmos para determinar Caminos Mínimos en Grafos Algoritmos y Estructuras de Datos III DC, FCEN, UBA, C 202 Problemas de camino mínimo Dado un grafo orientado G = (V, E)

Más detalles

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas Unidad II Fundamentos de programación en Java Ing. José Luis Llamas Cárdenas En java para poder escribir se emplea el objeto System.out, t pero para leer del teclado es necesario emplear System.in Et Este

Más detalles

Introducción a la Teoría de Grafos

Introducción a la Teoría de Grafos Introducción a la Teoría de Grafos Flavia Bonomo fbonomo@dc.uba.ar do. Cuatrimestre 009 Árboles Un árbol es un grafo conexo y acíclico (sin ciclos). Un bosque es un grafo acíclico, o sea, una unión disjunta

Más detalles

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1 Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos

Más detalles

TEORÍA DE GRAFOS Ingeniería de Sistemas

TEORÍA DE GRAFOS Ingeniería de Sistemas TEORÍA DE GRAFOS Ingeniería de Sistemas Código: MAT-31114 AUTORES Ing. Daniel Zambrano Ing. Viviana Semprún UNIDADES DE LA ASIGNATURA» UNIDAD I. Relaciones» UNIDAD II. Estructuras Algebraicas» UNIDAD III.

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Solución al Examen de Prácticas de Programación (Ingeniería Informática)

Solución al Examen de Prácticas de Programación (Ingeniería Informática) Solución al Examen de Prácticas de Programación (Ingeniería Informática) Junio 2006 Parte I. Cuestiones (3 puntos=50% nota del examen) 1) Se desea crear un conjunto de clases para representar en un programa

Más detalles

11. Algunas clases estándar de Java (II)

11. Algunas clases estándar de Java (II) 122 A. García-Beltrán y J.M. Arranz 11. Algunas clases estándar de Java (II) Objetivos: a) Presentar la clase predefinida en Java para trabajar con arrays b) Interpretar el código fuente de una aplicación

Más detalles

Introducción a la Teoría de Grafos

Introducción a la Teoría de Grafos Introducción a la Teoría de Grafos Flavia Bonomo fbonomo@dc.uba.ar do. Cuatrimestre 009 Programa Introducción a la teoría de grafos Problemas de camino mínimo Problemas de flujo máximo Programación lineal

Más detalles

Tema 7.- Fundamentos de la Programación Orientada a Objetos

Tema 7.- Fundamentos de la Programación Orientada a Objetos Tema 7.- Fundamentos de la Programación Orientada a Objetos 7 de enero de 2014 Objetivos Saber definir clases propias. Saber crear objetos de una clase determinada e interactuar con ellos (Problema 1).

Más detalles

Algoritmos sobre Grafos

Algoritmos sobre Grafos Sexta Sesión 27 de febrero de 2010 Contenido Deniciones 1 Deniciones 2 3 4 Deniciones sobre Grafos Par de una lista de nodos y una lista de enlaces, denidos a su vez como pares del conjunto de nodos.

Más detalles

Clase adicional 2. Estructuras básicas de control. Temas

Clase adicional 2. Estructuras básicas de control. Temas Clase adicional 2 Temas Estructuras de control Sentencia condicional Iteración Clases Definir una clase Crear una instancia de una clase Campos estáticos Problemas de la clase adicional Problema de diseño

Más detalles

Fundamentos de la teoría de grafos

Fundamentos de la teoría de grafos Fundamentos de la teoría de grafos 3º I.T.I. de Sistemas Mª Teresa Cáceres Sansaloni 1 Tema 1: Nociones básicas Conceptos básicos sobre grafos. Representación de grafos. Multigrafos, grafos dirigidos y

Más detalles

Fundamentos de Programación Visual Basic

Fundamentos de Programación Visual Basic Pág. N. 1 Fundamentos de Programación Visual Basic Familia: Editorial: Tecnología de información y computación Macro Autor: Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-236-3 N. de páginas: 280

Más detalles

Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos

Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos Santiago Zanella 2008 1 Introducción Para ciertas aplicaciones se requiere mantener n elementos distintos agrupándolos en una colección

Más detalles

Árboles abarcadores mínimos: algoritmo de Prim y algoritmo de Kruskal.

Árboles abarcadores mínimos: algoritmo de Prim y algoritmo de Kruskal. Árboles abarcadores mínimos: algoritmo de Prim y algoritmo de Kruskal. Jose Aguilar 1 Grafo de carreteras entre ciudades Mcbo Coro Pto. Cabello Valera Bqto Valencia Maracay Caracas Acarigua Barinas San

Más detalles

Algoritmos y estructuras de datos

Algoritmos y estructuras de datos Algoritmos y estructuras de datos Dr. Eduardo A. Rodríguez Tello Laboratorio de Tecnologías de Información Cinvestav Tamaulipas ertello@tamps.cinvestav.mx Cursos de inducción a la MCC Cinvestav Tamaulipas

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...

Más detalles

Tema 14 Grafos y su Implementación en Java. Parte II. Recorrido en Profundidad (DFS) de un Grafo. Recorrido de un Grafo: Ampliación de la clase Grafo

Tema 14 Grafos y su Implementación en Java. Parte II. Recorrido en Profundidad (DFS) de un Grafo. Recorrido de un Grafo: Ampliación de la clase Grafo Tema Grafos y su Implementación en Java Tema Grafos y su Implementación en Java Parte II Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Índice general:.

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN Curso: 2013/14 EXAMEN PARA ALUMNOS PRESENTADOS AL PRIMER PARCIAL PRIMERA PARTE. EJERCICIO 1 Cuestiones (1 punto)

FUNDAMENTOS DE PROGRAMACIÓN Curso: 2013/14 EXAMEN PARA ALUMNOS PRESENTADOS AL PRIMER PARCIAL PRIMERA PARTE. EJERCICIO 1 Cuestiones (1 punto) EXAMEN PARA ALUMNOS PRESENTADOS AL PRIMER PARCIAL PRIMERA PARTE EJERCICIO 1 Cuestiones (1 punto) 1 2 3 4 5 6 7 8 9 10 Seleccione la opción correcta en cada caso, teniendo en cuenta que tan sólo puede marcar

Más detalles

LA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C)

LA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C) APRENDERAPROGRAMAR.COM LA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado

Más detalles

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad

Más detalles

Una Interfaz Grafo-Matriz

Una Interfaz Grafo-Matriz Una Interfaz Grafo-Matriz R. Carballo, C. Escribano, M.A. Asunción Sastre Dept. Matemática Aplicada F.Informática. U.P.M. Boadilla del Monte Madrid, 28660-Madrid e-mail: cescribano@fi.uib.es Resumen. El

Más detalles

El TAD Grafo. El TAD Grafo

El TAD Grafo. El TAD Grafo ! Esta representación resulta útil cuando el número de vértices se conoce previamente y permanecerá fijo durante la resolución del problema, pero resulta ineficiente si necesitamos añadir o eliminar vértices

Más detalles

Metodología y Tecnología de la Programación

Metodología y Tecnología de la Programación Metodología y Tecnología de la Programación Curso 2008/09 Tema 7 Tipos de Datos Abstractos Temario 7.1 Concepto de Tipo de Datos Abstracto 7.2 Clasificación de Tipos de Datos Abstractos 7.3 Especificación

Más detalles

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Introducción a Java LSUB. 30 de enero de 2013 GSYC Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial

Más detalles

Índice Unidad 1: Lógica y teoría de conjuntos... 2

Índice Unidad 1: Lógica y teoría de conjuntos... 2 MATEMÁTICA DISCRETA Índice Unidad 1: Lógica y teoría de conjuntos... 2 1. Definiciones... 2 2. Leyes de la lógica... 2 3. Reglas de inferencia... 3 4. Lógica de predicados... 3 5. Teoría de conjuntos...

Más detalles

Capítulo 6. Relaciones. Continuar

Capítulo 6. Relaciones. Continuar Capítulo 6. Relaciones Continuar Introducción Una relación es una correspondencia entre dos elementos de dos conjuntos con ciertas propiedades. En computación las relaciones se utilizan en base de datos,

Más detalles

Unidad Nº V Listas Enlazadas

Unidad Nº V Listas Enlazadas Instituto Universitario Politécnico Santiago Mariño Unidad Nº V Listas Enlazadas Lista Enlazadas Es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta

Más detalles

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) APRENDERAPROGRAMAR.COM QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:

Más detalles

7. GRAFOS. Figura 7.1 Ejemplo de un grafo. el cálculo diferencial,...

7. GRAFOS. Figura 7.1 Ejemplo de un grafo. el cálculo diferencial,... . GRAFOS Se consideran los árboles como una generalización del concepto de lista porque permiten que un elemento tenga más de un sucesor. Los grafos aparecen como una extensión del concepto de árbol, ya

Más detalles

2. Estructura de un programa en Java

2. Estructura de un programa en Java 24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador

Más detalles

Complejidad computacional (Análisis de Algoritmos)

Complejidad computacional (Análisis de Algoritmos) Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución

Más detalles

Práctica 2: Java Remote Method Invocation (RMI)

Práctica 2: Java Remote Method Invocation (RMI) Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es

Más detalles

Tema 9. Algoritmos sobre listas. Programación Programación - Tema 9: Algoritmos sobre listas

Tema 9. Algoritmos sobre listas. Programación Programación - Tema 9: Algoritmos sobre listas Tema 9 Algoritmos sobre listas Programación 2015-2016 Programación - Tema 9: Algoritmos sobre listas 1 Tema 9. Algoritmos sobre listas Algoritmos sobre Arrays. Búsqueda. Inserción. Ordenación. Programación

Más detalles

INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C)

INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C) APRENDERAPROGRAMAR.COM INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C) Sección: Cursos Categoría: Lenguaje de programación Java nivel

Más detalles

Fundamentos de programación JAVA

Fundamentos de programación JAVA Pág. N. 1 Fundamentos de programación JAVA Familia: Editorial: Autor: Computación e informática Macro Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-238-7 N. de páginas: 296 Edición: 2. a 2014 Medida:

Más detalles

Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad

Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad Estructuras Discretas Relaciones Definición: relación Relaciones Claudio Lobos, Jocelyn Simmonds clobos,jsimmond@inf.utfsm.cl Universidad Técnica Federico Santa María Estructuras Discretas INF 152 Sean

Más detalles

Universidad Carlos III de Madrid Ingeniería de Telecomunicación. Examen de Programación Febrero 2007. Parte de Ejercicios

Universidad Carlos III de Madrid Ingeniería de Telecomunicación. Examen de Programación Febrero 2007. Parte de Ejercicios Universidad Carlos III de Madrid Ingeniería de Telecomunicación Examen de Programación Febrero 2007 Parte de Ejercicios Responder y entregar cada ejercicio en hojas separadas Numerar todas las hojas de

Más detalles

Ficheros y streams. Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream].

Ficheros y streams. Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream]. Ficheros y streams Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream]. Los streams pueden ser de entrada () de salida (). Los ficheros pueden almacenar

Más detalles

Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática

Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Generación de excepciones.

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. LENGUAJE ALGORÍTMICO...15 1.1 DEFINICIÓN DE ALGORITMO...16 1.2 LA ROTACIÓN DE UNA LISTA DE NÚMEROS NATURALES...20 1.3 CUESTIONES...23 1.3.1 Dos comerciales en el restaurante...23

Más detalles

Programación Orientada a Objetos. Tema 7: Persistencia

Programación Orientada a Objetos. Tema 7: Persistencia Programación Orientada a Objetos Tema 7: Persistencia Tema 7: Persistencia Contenidos 1. LIBRERÍA I/O 2. FICHEROS 3. FICHEROS DE ACCESO DIRECTO 4. FICHEROS DE TEXTO 5. SERIALIZACIÓN DE OBJETOS 6. EJEMPLO

Más detalles

Planificaciones Algoritmos y Programación II. Docente responsable: CALVO PATRICIA MABEL. 1 de 6

Planificaciones Algoritmos y Programación II. Docente responsable: CALVO PATRICIA MABEL. 1 de 6 Planificaciones 7504 - Algoritmos y Programación II Docente responsable: CALVO PATRICIA MABEL 1 de 6 OBJETIVOS Que el alumno maneje de modo correcto el diseño de un TDA de acuerdo a las exigencias de una

Más detalles

Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java.

Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java. Práctica 3 mtp metodoloxía e tecnoloxía da programación Objetivos: Duración: Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java. 1 semana 1.- Identificadores Los identificadores

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

Binary Decision Diagrams

Binary Decision Diagrams Rodríguez Blanco 2006-05-18 Introduccion Equivalencia Tablas de verdad eficientes Construcción de Equivalencia Tablas de verdad eficientes Equivalencia de dos fórmulas A 1 y A 2. Construir su tabla de

Más detalles

Tema Evaluación / Pruebas del Software

Tema Evaluación / Pruebas del Software 1 DISEÑO DE SISTEMAS DE INFORMACIÓN Tema Evaluación / Pruebas del Software 2 Tema 3. Evaluación / Pruebas del Software 3 Índice Introducción Objetivos y principios de las pruebas Diseño de casos de prueba

Más detalles

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida } REUTILIZACIÓN DE CLASES:MODELO DE HERENCIA EN JAVA Java soporta herencia simple pero no múltiple. Lo hace mediante el mecanismo de extensión de clase. A partir de él, una subclase se extiende (hereda)

Más detalles

Introducción a la teoría de grafos

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

MONITORES EN JAVA. Antonio Tomeu Control de la Concurrencia en Java: API Estándar

MONITORES EN JAVA. Antonio Tomeu Control de la Concurrencia en Java: API Estándar MONITORES EN JAVA Un monitor es un objeto que implementa acceso bajo e.m. a todos sus métodos, y provee sincronización En Java, son objetos de una clase cuyos métodos públicos son todos synchronized Un

Más detalles

Primer Parcial de Programación 3 (1/10/2009)

Primer Parcial de Programación 3 (1/10/2009) Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión

Más detalles

Pruebas de unidad con JUnit

Pruebas de unidad con JUnit Pruebas de unidad con JUnit Cuando se implementa software, resulta recomendable comprobar que el código que hemos escrito funciona correctamente. Para ello, implementamos pruebas que verifican que nuestro

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

Flujos de redes (Network Flows NF)

Flujos de redes (Network Flows NF) Fluos de redes (Network Flows NF). Terminología. Árbol generador mínimo. Camino mínimo 4. Fluo máximo 5. Fluo de coste mínimo TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES Terminología Red o grafo (G) Nodos

Más detalles

Soluciones Ejercicios Tema 3

Soluciones Ejercicios Tema 3 1 Soluciones Ejercicios Tema 3 Germán Moltó gmolto@dsic.upv.es Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Solución Ejercicio

Más detalles

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I

Más detalles

MEMORIA DE LA PRÁCTICA DE PROGRAMACIÓN III CURSO 2006-2007

MEMORIA DE LA PRÁCTICA DE PROGRAMACIÓN III CURSO 2006-2007 MEMORIA DE LA PRÁCTICA DE PROGRAMACIÓN III CURSO 2006-2007. CENTRO ASOCIADO DE ALBACETE Contenido: 1. RESPUESTAS A LAS CUESTIONES PLANTEADAS EN EL ENUNCIADO. 1.1. Características de la aplicación del esquema

Más detalles

Introducción a los códigos compresores

Introducción a los códigos compresores Introducción a los códigos compresores Parte I de la Lección 2, Compresores sin pérdidas, de CTI Ramiro Moreno Chiral Dpt. Matemàtica (UdL) Febrero de 2010 Ramiro Moreno (Matemàtica, UdL) Introducción

Más detalles

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Sintaxis de Java Sintaxis Define las reglas que determinar el uso de palabras clave, operadores y variables para construir y evaluar expresiones.

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Elementos de lenguaje: Identificadores Tipos de datos 2 Tipos de datos primitivos 3 Tipos de datos referenciados Clases Interfaces Arrays

Más detalles

ANEXO XVII DE LA RESOLUCION N

ANEXO XVII DE LA RESOLUCION N Hoja 1 de 7 UNIVERSIDAD NACIONAL DE CÓRDOBA Facultad de Ciencias Exactas Físicas y Naturales República Argentina Programa de: Código: Informática Carrera: Materia común Res. Nº Plan: Puntos:3.5 Escuela:

Más detalles

Práctica sobre compartición de instancias remotas.

Práctica sobre compartición de instancias remotas. Práctica sobre compartición de instancias remotas. Para esta práctica se ha construido un pequeño sistema cliente-servidor que permite la resolución de Sudokus entre varios jugadores. El servidor consta

Más detalles

4.- GRAFOS. 4. Definiciones básicas:

4.- GRAFOS. 4. Definiciones básicas: 4.- GRAFOS 4. Definiciones básicas: Un grafo es la representación por medio de conjuntos de relaciones arbitrarias entre objetos. Existen dos tipos de grafos según la relación entre los objetos sea unívoca

Más detalles

Derechos de Acceso: COMPOSICION

Derechos de Acceso: COMPOSICION CLASES Una clase es un tipo definido por el usuario que describe los atributos y los métodos de los objetos que se crearan a partir de la misma. class nombre_clase cuerpo de la clase Derechos de Acceso:

Más detalles

Un grafo G es un par (V,E) donde V es un conjunto (llamado conjunto de vértices) y E un subconjunto de VxV (conjunto de aristas).

Un grafo G es un par (V,E) donde V es un conjunto (llamado conjunto de vértices) y E un subconjunto de VxV (conjunto de aristas). TEMA 5.- GRAFOS 5.1.- DEFINICIONES BÁSICAS Un grafo G es un par (V,E) donde V es un conjunto (llamado conjunto de vértices) y E un subconjunto de VxV (conjunto de aristas). Gráficamente representaremos

Más detalles

Examen de Prácticas de Programación Ingeniería Informática

Examen de Prácticas de Programación Ingeniería Informática Examen de Prácticas de Programación Ingeniería Informática Septiembre 2007 1) (3.5 puntos) Se pretende desarrollar un programa para gestionar las reparaciones de coches realizadas en un garaje. Del análisis

Más detalles

Ejercicios de evaluación de fundamentos de programación en Java

Ejercicios de evaluación de fundamentos de programación en Java Ejercicios de evaluación de fundamentos de programación en Java Jorge Martínez Ladrón de Guevara Editorial EME ISBN 978-84-96285-40-8 Contenido 1. Introducción a Java... 1 Test de evaluación...1 Ejercicios...4

Más detalles

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus

Más detalles