Ejemplos de TAD (tipos simples)
|
|
- Victoria Peña Salazar
- hace 8 años
- Vistas:
Transcripción
1 ESPECIFICACIÓN BOOLEANOS TAD booleano Ejemplos de TAD (tipos simples) T : booleano { valor cierto } F : booleano { valor falso } : booleano booleano : booleano, booleano booleano : booleano, booleano booleano x, y : booleano T == F F == T x y == y x { conmutatividad } x y == y x F x == F ; T T == T { tablas de verdad } T x == T ; F F == F ESPECIFICACIÓN NATURALES1 (BOOLEANOS) TAD natural 0 : natural suc : natural natural { siguiente número natural } +, * : natural, natural natural = : natural, natural booleano x, y : natural x + 0 == x { axiomas de Peano } x * 0 == 0 x + suc(y) == suc(x + y) x * suc(y) == (x * y) + x 0 = 0 == T 0 = suc(x) == F ; suc(x) = 0 == F suc(x) = suc(y) == x = y UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 1
2 ESPECIFICACIÓN NATURALES2 (NATURALES1) : natural, natural booleano >,, < : natural, natural booleano x, y : natural 0 x == T suc(x) 0 == F suc(x) suc(y) == x y x > y == (x y) x y == (x > y) (x = y) x < y == (x y) ESPECIFICACIÓN NATURALES3 (NATURALES2) - : natural, natural natural div : natural, natural natural { Cociente } mod : natural, natural natural { Resto } mcd : natural, natural natural { Máximo común divisor } x, y : natural x - y x y x div y y 0 x mod y y 0 x - 0 == x suc(x) - suc(y) == x - y (x < y) x div y == 0 (x y) x div y == (x-y) div y (x < y) x mod y == x (x y) x mod y == (x-y) mod y mcd(x, 0) == x mcd(x, x) == x mcd(x, y) == mcd(y, x) mcd(x, y) == mcd(y, x mod y) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 2
3 TADs de Parámetros ESPECIFICACIÓN EQUIVALENCIA (BOOLEANOS) TAD equivalente = : equivalente, equivalente booleano : equivalente, equivalente booleano x, y, z : equivalente x = x == T { Reflexividad } x = y == y = x { Simetría } (x = y) (y = z) == x = z { Transitividad } x y == (x = y) ESPECIFICACIÓN COMPARABLE (EQUIVALENCIA) TAD comparable equivalente : comparable, comparable booleano, <, > : comparable, comparable booleano x, y, z : comparable x x == T { Reflexividad } (x y) (y x) == x = y { Antisimetría } (x y) (y z) == x z { Transitividad } x > y == (x y) x y == (x > y) (x = y) x < y == (x y) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 3
4 TAD Vector ESPECIFICACIÓN VECTOR (NATURALES1, COMPARABLE) TAD vector [indice comparable, elemento] crear : natural vector { Crea un vector no asignado tamaño : vector natural con índices 1..n } asignado : vector, indice booleano asignar : vector, indice, elemento vector valor : vector, indice elemento v : vector ; n : natural ; i, j : indice ; x, y : elemento [P1] asignar( v, i, x ) 1 i tamaño(v) [P2] valor( v, i ) (1 i tamaño(v)) asignado( v, i ) [E1] asignar( asignar(v, i, x), i, y ) == asignar(v, i, y) [E2] ( i j ) asignar( asignar(v, i, x), j, y ) == asignar( asignar(v, j, y), i, x ) [E3] valor( asignar(v, i, x), i ) == x [E4] ( i j ) valor( asignar(v, i, x), j ) == valor(v, j) [E5] asignado( asignar(v, i, x), i ) == T [E6] ( i j ) asignado( asignar(v, i, x), j ) == asignado(v, j) [E7] asignado( crear(n), i ) == F [E8] tamaño( crear(n) ) == n [E9] tamaño( asignar(v,i,x) ) == tamaño(v) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 4
5 TAD Colección y Conjunto ESPECIFICACION COLECCION (NATURALES1, EQUIVALENCIA) TAD coleccion[elemento equivalente] crear_coleccion : coleccion { colección vacía } añadir : coleccion, elemento coleccion { añadir elemento } quitar : coleccion, elemento coleccion { quitar todos los elementos iguales } cuantos_hay : coleccion, elemento natural { contar elementos iguales } c : colección x, y : elemento quitar( crear_coleccion, x ) == crear_coleccion quitar( añadir(c, x), x ) == quitar(c, x) (x y) quitar( añadir(c, x), y ) == añadir( quitar(c, y), x ) cuantos_hay( crear_coleccion, x ) == 0 cuantos_hay( añadir(c, x), x ) == 1 + cuantos_hay(c, x) (x y) cuantos_hay( añadir(c, x), y ) == cuantos_hay(c, x) ESPECIFICACIÓN CONJUNTO (EQUIVALENCIA) TAD conjunto[elemento equivalente] crear_conjunto : conjunto { conjunto vacío } añadir : conjunto, elemento conjunto { incluir elemento } quitar : conjunto, elemento conjunto { excluir elemento } pertenece : conjunto, elemento booleano { pertenencia de elemento } c : conjunto x, y : elemento quitar( crear_conjunto, x ) == crear_conjunto quitar( añadir(c, x), x ) == quitar(c, x) (x y) quitar( añadir(c, x), y ) == añadir( quitar(c, y), x ) pertenece( crear_conjunto, x ) == F pertenece( añadir(c, x), x ) == T (x y) pertenece( añadir(c, x), y ) == pertenece(c, x) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 5
6 TAD Lista (Especificación básica Bicola) ESPECIFICACIÓN LISTA_BASICA (NATURALES1) TAD lista[elemento] [ ] : lista { lista vacía } [ ] : elemento lista { lista unitaria } ++ : lista, lista lista { concatenar listas } >> : elemento, lista lista { insertar al principio } << : lista, elemento lista { insertar al final } tamaño : lista natural { número de elementos } esta_vacía : lista booleano primero, ultimo : lista elemento { acceso } quita_primero, quita_ultimo : lista lista { borrado } l, l1, l2 : lista; x : elemento primero( l ) esta_vacía( l ) ultimo( l ) esta_vacía( l ) quita_primero( l ) esta_vacía( l ) quita_ultimo( l ) esta_vacía( l ) [ ] ++ l == l ( x >> l1 ) ++ l2 == x >> ( l1 ++ l2 ) l << x == l ++ [ x ] [ x ] == x >> [ ] tamaño( [ ] ) == 0 tamaño( x >> l ) == 1 + tamaño( l ) primero( x >> l ) == x quita_primero( x >> l ) == l ultimo( x >> [ ] ) == x ultimo( x >> (y >> l) ) == ultimo( y >> l ) quita_ultimo( x >> [ ] ) == [ ] quita_ultimo( x >> (y >> l) ) == x >> quita_ultimo( y >> l ) esta_vacía( [ ] ) == T esta_vacía( x >> l ) == F UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 6
7 TAD Lista (acceso por índice) ESPECIFICACIÓN LISTA_INDEXADA (LISTA_BASICA) TAD lista_ind[elemento] : lista_ind, natural elemento { acceso a elemento } insertar : lista_ind, natural, elemento lista_ind { insertar( l, i, x i == x } cambiar : lista_ind, natural, elemento lista_ind { cambiar( l, i, x i == x } quitar : lista_ind, natural lista_ind concatenar : lista_ind, lista_ind lista_ind l, l1, l2 : lista_ind ; x, y : elemento ; i : natural i 1 i tamaño( l ) insertar( l, x, i ) 1 i tamaño( l ) cambiar( l, x, i ) 1 i tamaño( l ) quitar( l, i ) 1 i tamaño( l ) ( x >> l 1 == x ( i > 1 ) ( x >> l i == ( i - 1 ) insertar( l, 1, x ) == x >> l ( i > 1 ) insertar( y >> l, i, x ) == y >> insertar( l, i - 1, x ) cambiar( y >> l, 1, x ) == x >> l ( i > 1 ) cambiar( y >> l, i, x ) == y >> cambiar( l, i - 1, x ) quitar( x >> l, 1 ) == l ( i > 1 ) quitar( x >> l, i ) == x >> quitar( l, i - 1 ) concatenar(l1, l2) == l1 ++ l2 UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 7
8 TAD Lista (acceso por cursor) ESPECIFICACIÓN LISTA_CURSOR (LISTA_BASICA) TAD lista_cur[elemento] crear_lc : lista_cur { lista-cursor vacía } : lista, lista lista_cur { una lista-cursor consta de dos lista basicas } fin_de_lista : lista_cur booleano { cursor fuera de la lista } actual : lista_cur elemento { acceso a elemento actual } ir_a_siguiente : lista_cur lista_cur { elemento actual pasa a ser el siguiente } ir_a_inicial : lista_cur lista_cur { elemento actual pasa a ser el primero } insertar : lista_cur, elemento lista_cur { inserta despues del actual y pasa al siguiente } cambiar : lista_cur, elemento lista_cur { cambia el elemento actual y pasa al siguiente } quitar : lista_cur lista_cur { borra el elemento actual y pasa al siguiente } concatenar : lista_cur, lista_cur lista_cur { une dos listas, una despues de la otra } l : lista_cur ; l1, l2 : lista ; x, y : elemento; actual( l ) fin_de_lista( l ) cambiar( l ) fin_de_lista( l ) quitar( l ) fin_de_lista( l ) crear_lc == [ ] [ ] fin_de_lista( l1 [ ] ) == T fin_de_lista( l1 (x >> l2) ) == F actual( l1 (x >> l2) ) == x ir_a_siguiente( l1 [ ] ) == l1 [ ] ir_a_siguiente( l1 (x >> l2) ) == (l1 << x) l2 ir_a_inicial( l1 l2 ) == [ ] (l1 ++ l2) insertar( l1 [ ], x ) == l1 [ x ] insertar( l1 (y >> l2), x ) == (l1 << y) (x >> l2) cambiar( l1 (y >> l2), x ) == (l1 << x) l2 quitar( l1 (x >> l2) ) == l1 l2 concatenar( l1 l2, l3 l4 ) == (l1 ++ l2) (l3 ++ l4) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 8
9 TAD Lista ordenada (acceso por índice) ESPECIFICACIÓN LISTA_ORDENADA (COMPARABLE) TAD lista_ord[elemcomp comparable] crear_lisord : lista_ord { crear lista vacía } tamaño : lista_ord natural { número de elementos : lista_ord, natural elemcomp { acceso a elemento } insertar : lista_ord, elemcomp lista_ord { insertar en orden } cambiar : lista_ord, natural, elemcomp lista_ord { cambiar elem. en posición } quitar : lista_ord, natural lista_ord { quitar elem. en posición } fusionar : lista_ord, lista_ord lista_ord OCULTO >> : elemcomp, lista_ord lista_ord { inserción al principio } l, l1, l2 : lista_ord ; x, y : elemcomp ; i : natural i 1 i tamaño( l ) insertar( l, x, i ) 1 i tamaño( l ) cambiar( l, x, i ) 1 i tamaño( l ) quitar( l, i ) 1 i tamaño( l ) tamaño( crear_lisord ) == 0 tamaño( x >> l ) == 1 + tamaño( l ) ( x >> l 1 == x ( i > 1 ) ( x >> l i == ( i - 1 ) quitar( x >> l, 1 ) == l ( i > 1 ) quitar( x >> l, i ) == x >> quitar( l, i - 1 ) cambiar( l, i, x ) == insertar( quitar( l, i ), x ) insertar( [ ], x ) == x >> [ ] (x < y) insertar( y >> l, x ) == x >> (y >> l) (x y) insertar( y >> l, x ) == y >> insertar(l, x) fusionar( l, [ ] ) == l fusionar( [ ], l ) == l (x y) fusionar( x >> l1, y >> l2 ) == x >> fusionar( l1, y >> l2 ) (x > y) fusionar( x >> l1, y >> l2 ) == y >> fusionar( x >> l1, l2 ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 9
10 Operaciónes de búsqueda en listas ESPECIFICACIÓN BUSQLIS (LISTA_INDEXADA, LISTA_CURSOR, LISTA_ORDENADA) { Aunque tienen el mismo nombre son operaciones distintas porque se aplican a TADs diferentes (sus parámetros son de tipos distintos). La búsqueda en listas indexadas y ordenadas devuelven la posición del primer elemento igual o un indice fuera de rango (mayor que el tamaño de la lista) si no existe ningún elemento igual. La búsqueda en listas basadas en cursor situa el cursor sobre el primer elemento igual o sobre el final de la lista si no existe. } buscar : lista_ind, elemento natural buscar : lista_cur, elemento lista_cur buscar : lista_ord, elemcomp natural l1, l2 : lista ; li : lista_ind ; lo : lista_ord ; x, y : elemento; u,v : elemcomp { --- Lista indexada --- } buscar( [ ], x ) == 1 buscar( x >> li, x ) == 1 (x y) buscar( y >> li, x ) == 1+ buscar( li, x ) { --- Lista basada en cursor --- } buscar( l1 [ ], x ) == l1 [ ] buscar( l1 (x >> l2), x ) == l1 (x >> l2) (x y) buscar( l1 (x >> l2), y ) == buscar( (l1 << x) l2, y) { --- Lista ordenada --- } buscar( crear_lisord, u ) == 1 buscar( u >> lo, u ) == 1 (u v) buscar( v >> lo, u ) == 1+ buscar( lo, u ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 10
11 TAD Pila y Cola ESPECIFICACIÓN PILA Y COLA (BOOLEANOS) TAD pila[elemento] TAD cola[elemento] { --- Operaciones de pila --- } crear_pila : pila vacía : pila booleano añadir : pila, elemento pila cima : pila elemento { Último elemento añadido } quitar : pila pila { Elimina elemento cima } { --- Operaciones de cola --- } crear_cola : cola vacía : cola booleano añadir : cola, elemento cola cabeza : cola elemento { Primer elemento añadido } quitar : cola cola { Elimina elemento cabeza } p : pila; c : cola ; x : elemento cima(p) vacía(p) quitar(p) vacía(p) cabeza(c) vacía(c) quitar(c) vacía(c) { --- Pila --- } vacía( crear_pila ) == T vacía( añadir(p, x) ) == F cima( añadir(p, x) ) == x quitar( añadir(p, x) ) == p { --- Cola --- } vacía( crear_cola ) == T vacía( añadir(c, x) ) == F cabeza( añadir( crear_cola, x ) ) == x vacía(c) cabeza( añadir(c, x) ) == cabeza(c) quitar( añadir( crear_cola, x ) ) == crear_cola vacía(c) quitar( añadir(c, x) ) == añadir( quitar(c), x ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 11
12 TAD Cola de prioridad ESPECIFICACIÓN COLA PRIORIDAD (COMPARABLE) TAD colapri[elemcomp comparable] crear_cp : colapri { Crear cola vacía } vacía : colapri booleano minimo : colapri elemcomp { Elemento mínimo } añadir : colapri, elemcomp colapri { Añadir elemento } quitar : colapri colapri { Elimina el elemento mínimo } { --- Operaciones auxiliares --- } min_aux : cola_pri, elemcomp colapri { Obtención del valor mínimo } quitar_aux : cola_pri, elemcomp colapri { Quitar elemento igual } : elemcomp, cola_pri booleano { Pertenencia } c : colapri ; x, y: elemento minimo(c) vacía(c) quitar(c) vacía(c) cambiar(c, x) vacía(c) min_aux(c, x) vacía(c) quitar_aux(c, x) x c vacía( crear_cp ) == T vacía( añadir(c, x) ) == F minimo( añadir(c, x) ) == min_aux(c, x) min_aux( crear_cp, x ) == x (x < y) min_aux( añadir(c, x), y ) == min_aux(c, x) (x y) min_aux( añadir(c, x), y ) == min_aux(c, y) quitar(c) == quitar_aux( c, minimo(c) ) quitar_aux( añadir(c, x), x ) == c (x y) quitar_aux( añadir(c, y), x ) == añadir( quitar_aux(c, x), y ) x crear_cp == F x añadir(c, x) == T (x y) x añadir(c, y) == x c UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 12
13 TAD Tabla (un elemento por clave) ESPECIFICACION TABLA (EQUIVALENCIA) TAD tabla[clave equivalente, elemento] crear_tabla : tabla { creación de una tabla vacía } añadir : tabla, clave, elemento : tabla { inserción y modificación } quitar : tabla, clave tabla { borrado de clave } presente : tabla, clave booleano { existencia de par clave-elemento } valor : tabla, clave elemento { acceso a elemento } t : tabla ; k, k1, k2 : clave ; v : elemento valor(t, k) presente(t, k) quitar( crear_tabla, k ) == crear_tabla quitar( añadir(t, k, v), k ) == quitar( t, k ) ( k1 k2 ) quitar( añadir( t, k1, v ), k2 ) == añadir( quitar( t, k2 ), k1, v ) presente( crear_tabla, k ) == F presente( añadir(t, k, v), k ) == T ( k1 k2 ) presente( añadir(t, k1, v), k2 ) == presente(t, k2) { Si existen varias operaciones de añadir sobre la misma clave sólo se tiene en cuenta la más reciente } valor( añadir(t, k, v), k ) == v ( k1 k2 ) valor( añadir(t, k1, v), k2 ) == valor(t, k2) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 13
14 TAD Diccionario (varios elementos por clave) ESPECIFICACIÓN DICCIONARIO (LISTA_BASICA) TAD diccionario[clave equivalente, elemento equivalente] crear_dic : diccionario { creación de un diccionario vacío } añadir : diccionario, clave, elemento diccionario { inserción } borrar : diccionario, clave diccionario { borrado de todos los elementos asociados a la misma clave } quitar : diccionario, clave, elemento diccionario { borrado de elemento concreto } valor : diccionario, clave lista[elemento] { lista de valores asoc. a clave } d : diccionario ; k, k1, k2 : clave ; v, v1, v2 : elemento borrar( crear_dic, k ) == crear_dic borrar( añadir(d, k, v), k ) == borrar(d, k) ( k1 k2 ) borrar( añadir(d, k1, v), k2 ) == añadir( borrar(d, k2), k1, v ) quitar(crear_dic, k, v) == crear_dic ( k1 k2 ) quitar( añadir(d, k1, v1), k2, v2 ) == añadir( quitar(d, k2, v2), k1, v1 ) quitar( añadir(d, k, v), k, v ) == quitar(d, k, v) ( v1 v2 ) quitar( añadir(d, k, v1 ), k, v2 ) == añadir( quitar(d, k, v2), k, v1 ) valor( crear_dic, k ) == [ ] valor( añadir(d, k, v), k ) == v >> valor(d, k) ( k1 k2 ) valor( añadir(d, k1, v), k2 ) == valor(d, k2) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 14
15 TAD Arbol ESPECIFICACION ARBOL (LISTA_INDEXADA) TAD arbol[nodo equivalente] : nodo, lista_ind[arbol] arbol { creación de un arbol } raiz : arbol nodo { nodo raiz de un arbol } subarbol : arbol, natural arbol { subarbol n-ésimo de un arbol } padre : arbol, nodo nodo { nodo padre de un nodo del arbol } hijos : arbol, nodo lista[nodo] { nodos hijos de un nodo del arbol }, : nodo, arbol booleano { pertenencia de un nodo a un arbol } a : arbol ; x, y : nodo ; i : natural ; l, l1, l2 : lista_ind[arbol] subarbol( x l, i ) 1 i tamaño(l) padre(a, x) ( x raiz(a) ) ( x a ) hijos(a, x) x a raiz( x l ) == x subarbol( x l, i ) == i x (x l) == T ( x y ) x (y [ ]) == F ( x y ) x (y (a >> l) ) == ( x a ) ( x (y l) ) x a == (x a) padre( y ((x l1 ) >> l2), x ) == y ( x a ) padre( y (a >> l), x ) == padre( a, x ) ( x a ) padre( y (a >> l), x ) == padre( y l, x ) hijos( x [ ], x ) == [ ] hijos( x (a >> l), x ) == raiz(a) >> hijos( x l, x ) ( x y ) ( x a ) hijos( y (a >> l), x ) == hijos( a, x ) ( x y ) ( x a ) hijos( y (a >> l), x ) == hijos( y l, x ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 15
16 Operaciones sobre árboles ESPECIFICACIÓN ARBOPER (ARBOL) altura : arbol natural altura_nodo : arbol, nodo natural profundidad : arbol, nodo natural preorden, postorden, inorden : arbol lista_ind[nodo] { --- Operaciones auxiliares para recorridos --- } lista_preorden, lista_postorden, lista_inorden : lista_ind[arbol] lista_ind[nodo] a : arbol ; x, y : nodo ; l : lista_ind[arbol] altura_nodo( a, x ) x a profundidad( a, x ) x a altura( x [ ] ) == 0 altura( x (a >> l) ) == max( 1+altura(a), altura(x l) ) altura_nodo( x l, x ) == altura( x l ) ( x y ) ( x a ) altura_nodo( y (a >> l), x ) == altura_nodo( a, x ) ( x y ) ( x a ) altura_nodo( y (a >> l), x ) == altura_nodo( y l, x ) profundidad( x l, x ) == 0 ( x y ) ( x a ) profundidad( y (a >> l), x ) == 1+profundidad( a, x ) ( x y ) ( x a ) profundidad( y (a >> l), x ) == profundidad( y l, x ) { --- Recorridos --- } preorden( x [ ] ) == [x] preorden( x l ) == x >> lista_preorden(l) lista_preorden( [ ] ) == [ ] lista_preorden( a >> l ) == preorden(a) ++ lista_preorden(l) postorden( x [ ] ) == [x] postorden( x l ) == lista_postorden(l) << x lista_postorden( [ ] ) == [ ] lista_postorden( a >> l ) == postorden(a) ++ lista_postorden(l) inorden( x [ ] ) == [x] inorden( x [a] ) == inorden(a) << x inorden( x (a >> l) ) == inorden(a) ++ [x] ++ lista_inorden(l) lista_inorden( [ ] ) == [ ] lista_inorden( a >> l ) == inorden(a) ++ lista_inorden(l) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 16
17 TAD Directorio ESPECIFICACION DIRECTORIO (EQUIVALENCIA, LISTA_BASICA) TAD directorio[nodo equivalente] { El TAD directorio es el análogo de un sistema de ficheros, y el TAD nodo representa el concepto de subdirectorio (un fichero sería un subdirectorio vacío). La operación insertar es el análogo de mkdir, quitar de rmdir, subdirs devuelve la lista de nodos hijos de otro nodo (análogo de dir ). } crear_dir : nodo directorio { crear directorio con nodo raiz } raiz : directorio nodo { nodo raiz del directorio } insertar : directorio, nodo, nodo directorio { inserta 2º nodo como hijo del 1º } quitar : directorio, nodo directorio { elimina el nodo y sus descendientes } quitar_aux : directorio, nodo directorio { elimina sólo el nodo (op. auxiliar) } quitar_lista : directorio, lista[nodo] directorio { elimina nodos de la lista (auxiliar) } subdirs : directorio, nodo lista[nodo] { lista de hijos del nodo } : directorio, nodo booleano { pertenencia de un nodo al dir. } d : directorio ; r, p, h, x : nodo insertar( d, x, y ) (x d) (y d) { No se permiten nodos duplicados } quitar( d, x ) x raiz(d) { No se puede borrar el raiz } quitar_aux( d, x ) x raiz(d) raiz( crear_dir(r) ) == r raiz( insertar(d, p, h) ) == raiz(d) r crear_dir(r) == T (h r) h crear_dir(r) == F h insertar(d, p, h) == T (x h) x insertar(d, p, h) == x d subdirs( crear_dir(r), p ) == [ ] subdirs( insertar( d, p, h ), p ) == h >> subdirs( d, p ) (x p) subdirs( insertar( d, p, h ), x ) == subdirs( d, x ) quitar(d, p) = quitar_lista( quitar_aux(d, p), subdirs(d, p) ) quitar_aux( crear_dir(r), h ) == crear_dir(r) quitar_aux( insertar( d, p, h ), h ) == d (x h) quitar_aux( insertar( d, p, h ), x ) == insertar( quitar_aux( d, x ), p, h ) quitar_lista(d, [ ]) == d quitar_lista( d, (x >> l) ) == quitar_lista( quitar(d, x), l ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 17
18 TAD Grafo (malla, red) ESPECIFICACION GRAFO (LISTA_BASICA, CONJUNTO) TAD grafo[nodo equivalente] crear_grafo : grafo { grafo vacío } insertar : grafo, nodo, nodo grafo { inserta arco en el grafo } quitar : grafo, nodo, nodo grafo { elimina arco del grafo } hay_arco : grado, nodo, nodo booleano { existencia de arco } vecinos : grafo, nodo lista[nodo] { nodos vecinos } nodos : grafo conjunto[nodo] { nodos del grafo } g : grafo ; x, y, a, b : nodo insertar(g, x, y) hay_arco(g, x, y) { no se permiten arcos duplicados } hay_arco( crear_grafo, x, y ) == F hay_arco( insertar(g, x, y), x, y ) == T hay_arco( insertar(g, y, x), x, y ) == T (x a) (x b) hay_arco( insertar(g, a, b), x, y ) == hay_arco(g, x, y) quitar( crear_grafo, x, y ) == crear_grafo quitar( insertar(g, x, y), x, y ) == g quitar( insertar(g, y, x), x, y ) == g (x a) (x b) quitar( insertar(g, a, b), x, y ) == insertar( quitar(g, x, y), a, b ) vecinos( crear_grafo, x ) == [ ] vecinos( insertar(g, x, y), x ) == y >> vecinos(g, x) vecinos( insertar(g, y, x), x ) == y >> vecinos(g, x) (x a) (x b) vecinos( insertar(g, a, b), x ) == vecinos(g, x) nodos( crear_grafo ) == crear_conjunto nodos( insertar(g, x, y) ) == añadir( añadir( nodos(g), x ), y ) UNIVERSIDAD DE VALLADOLID - DPTO. DE INFORMÁTICA PÁG. 18
TAD Lineales: Pila, Cola y Lista
TAD Lineales: Pila, Cola y Lista Objetivos! Dar a conocer los TAD lineales pila, cola y lista! Presentar la especificación de cada uno de los TAD! Discutir implementaciones alternativas para cada uno de
Más detallesDEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006
ARBOLES ESTRUCTURAS DE DATOS 2006 DEFINICION Un árbol (tree) es un conjunto finito de nodos. Es una estructura jerárquica aplicable sobre una colección de elementos u objetos llamados nodos; uno de los
Más detallesÁrboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores
Árboles Cursos Propedéuticos 2015 Dr. René Cumplido M. en C. Luis Rodríguez Flores Contenido de la sección Introducción Árbol genérico Definición y representación Árboles binarios Definición, implementación,
Más detallesEstructuras de datos: Árboles binarios de
Estructuras de datos: Árboles binarios de búsqueda, Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge santiago.jorge@udc.es Árboles binarios de búsqueda, Table of Contents
Más detallesTipos Abstractos de Datos
Objetivos Repasar los conceptos de abstracción de datos y (TAD) Diferenciar adecuadamente los conceptos de especificación e implementación de TAD Presentar la especificación algebraica como método formal
Más detallesÁrboles Binarios Ordenados Árboles AVL
Árboles Binarios Ordenados Árboles AVL Estructuras de Datos Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Recordatorio... Se acerca la fecha de la primera entrega
Más detallesAmpliación de Estructuras de Datos
Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios
Más detallesCapítulo 6. ÁRBOLES.
67 Capítulo 6. ÁRBOLES. 6.1 Árboles binarios. Un árbol binario es un conjunto finito de elementos, el cual está vacío o dividido en tres subconjuntos separados: El primer subconjunto contiene un elemento
Más detallesárbol como un conjunto de nodos y líneas
ÁRBOLES CAPÍTULO 6 ÁRBOLES Desde el punto de vista conceptual, un árbol es un objeto que comienza con una raíz (root) y se extiende en varias ramificaciones o líneas (edges), cada una de las cuales puede
Más detallesÁrbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción
Árbol binario Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Un Árbol Binario es un conjunto finito de Elementos, de nombre Nodos de forma que: El Árbol Binario
Más detallesSolució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 detallesTema 10- Representación Jerárquica: Tema 10- Representación Jerárquica: Árboles Binarios
Tema 10- Representación Jerárquica: Árboles Binarios Tema 10- Representación Jerárquica: Árboles Binarios Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia
Más detallesNIVEL 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 detallesRegistro (record): es la unidad básica de acceso y manipulación de la base de datos.
UNIDAD II 1. Modelos de Bases de Datos. Modelo de Red. Representan las entidades en forma de nodos de un grafo y las asociaciones o interrelaciones entre estas, mediante los arcos que unen a dichos nodos.
Más detalles2. 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 detallesTema IV Programación lógica con estructuras
Tema IV Programación lógica con estructuras Programación Lógica - E.T.S.I. Informática - Málaga 1 Términos La estructura de datos básica en PROLOG es el término. Los términos se clasifican en : variables
Más detallesMANUAL DE USUARIO: Simulador ArbolBinarioBusqueda<T>
MANUAL DE USUARIO: Simulador ArbolBinarioBusqueda Descripción General El presente Manual de usuario pretende describir en detalle el conjunto de funcionalidades de la Aplicación desarrollada para la
Más detallesContenido. Prólogo... Capítulo 1. Algoritmos y estructuras de datos... 1. Introducción... 24
Contenido Prólogo... vii Capítulo 1. Algoritmos y estructuras de datos... 1 Introducción... 2 1.1. Tipos de datos... 2 1.1.1. Tipos primitivos de datos... 3 1.1.2. Tipos de datos compuestos y agregados...
Más detalles3. ESTRUCTURAS DE DATOS NO LINEALES
3. ESTRUCTURAS DE DATOS NO LINEALES 3.1 Conjuntos 3.2 Árboles 3.3 Grafos 1 3.1 Conjuntos Índice Introducción Especificación del TAD TipoConjunto Implementaciones del TAD TipoConjunto Programación usando
Más detallesEstructuras de Datos. Montículos. Montículos. Montículos. Tema 3. Montículos. Definiciones básicas: Definiciones básicas:
Estructuras de Datos Tema. 1. Definiciones básicas 2. Implementación. Operaciones con montículos 4. Definiciones básicas: En un árbol binario completo todos los niveles del árbol (excepto tal vez el último)
Más detallesCurso 2006/2007 Estructura de Datos y de la Información I. Informática, I. T. Informática de Gestión y de Sistemas PRÁCTICA 2
Curso 2006/2007 Estructura de Datos y de la Información I. Informática, I. T. Informática de Gestión y de Sistemas PRÁCTICA 2 1 El problema Desserts es un local de hostelería que sirve toda clase de postres.
Más detallesÁRBOLES GENERALES Y Y ESTRUCTURAS DE ÍNDICES DEFINICIONES Y REPRESENTACIONES DEFINICIONES Y REPRESENTACIONES. NOMENCLATURA SOBRE ÁRBOLES. DECLARACIÓN Y REPRESENTACIÓN.. CONSTRUCCIÓN.. ÁRBOLES 2-3-4. ÁRBOLES
Más detallesCapítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Más detallesRestricciones. Inteligencia Artificial. Ingeniería Superior en Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani
Restricciones Ingeniería Superior en Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani 1 Tema 2: Agentes basados en Búsqueda Resumen: 2. Agentes basados en búsqueda
Más detallesÁRBOLES BINARIOS 2002. GRUPO # 22 Alumnos: Aguilar Elba Barrios Miguel Camacho Yaquelin Ponce Rodríguez Jhonny
ÁRBOLES BINRIOS 2002 GRUPO # 22 lumnos: guilar Elba Barrios Miguel Camacho Yaquelin Ponce Rodríguez Jhonny ESTRUCTURS DE DTOS TEM 6 Estructuras de datos no lineales. Árboles binarios ÍNDICE 6.1. Introducción.
Más detallesIntroducción a los árboles. Lección 11
Introducción a los árboles Lección 11 Árbol: Conjunto de elementos de un mismo tipo, denominados nodos, que pueden representarse en un grafo no orientado, conexo y acíclico, en el que existe un vértice
Más detallesEstructuras de Datos Abstractas en Lenguaje Java
Universidad de Santiago de Chile Facultad de Ingeniería Departamento de Ingeniería Industrial Estructuras de Datos Abstractas en Lenguaje Java Listas Enlazadas, Colas, Pilas y Árboles Binarios Creado por
Más detallesAlgoritmos y Programación II Curso 2006
Arboles: Un árbol es una colección de elementos, llamados nodos, uno de los cuales se distingue con el nombre de raíz. Los nodos mantienen entre ellos una relación que define una estructura jerárquica
Más detallesSEMINARIO DE ESPECIFICACIONES ALGEBRAICAS
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º, Año 2004/2005 SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Contenidos: 1. Descripción general de Maude 2. Comandos básicos 3. Formato
Más detallesNotas de Clase. Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia. 21 de febrero de 2004
Árboles Notas de Clase Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia 21 de febrero de 2004 Índice 1. Definición 1 2. Términos Básicos 2
Más detallesESTRUCTURA DE DATOS. ABB Arboles de Búsqueda Binaria
ESTRUCTURA DE DATOS ABB Arboles de Búsqueda Binaria ÁRBOLES BINARIOS Hasta ahora nos hemos dedicado a estudiar TAD que de una u otra forma eran de naturaleza lineal, o unidimensional. En los tipos abstractos
Más detallesGRAFOS. 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 detallesARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES
ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Características ARBOLES - CONCEPTOS Cada elemento del árbol se relaciona con cero o más elementos a quienes llama hijos. Si el árbol no
Más detallesAlgoritmos 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 detallesTemario. Tema 5. Estructuras de Datos no Lineales. 5.1 Árboles Binarios 5.2 Árboles n-arios
Temario 5.1 Árboles Binarios 5.2 Árboles n-arios Especificación Utilización Representación Enlazada 5.3 Árboles Binarios de Búsqueda 5.4 Árboles Parcialmente Ordenados 1 Árbol n-ario: O bien es el conjunto
Más detallesÁrboles de Búsqueda Binaria. Agustín J. González ELO-320: Estructura de Datos y Algoritmos
Árboles de Búsqueda Binaria Agustín J. González ELO-320: Estructura de Datos y Algoritmos 1 Introducción Los árboles de búsqueda son estructuras de datos que soportan las siguientes operaciones de conjuntos
Más detallesEstructura de Datos. Temario Unidad VI. Árboles Árboles Binarios
Estructura de Datos Árboles Árboles Binarios Temario Unidad VI 6.1 Definición y operaciones 6.2 Implementación 6.3 Recorrido en Árboles Binarios 6.4 Árboles AVL y su implementación 6.5 Árboles n-arios
Más detalles4 Introduccin a los tipos abstractos de datos o Definiciones o TAD String o Concepto de contenedor o Colecciones e Iteradores o Relaciones entre elementos o TAD's contenedores Estructuras de datos, curso
Más detallesCaso de Uso. Descripción. Prioridad. Actores. Precondiciones. Flujo Básico de Datos. Postcondiciones CREAR ASIGNATURA
10.2.1.2 Gestión de asignaturas En el modelo de datos actual, una asignatura tiene que pertenecer a al menos una titulación y tiene que haber al menos un profesor que la imparte. Probablemente habrá que
Más detallesResumen de los tipos abstractos de datos
Resumen de los tipos abstractos de datos José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e I.A. Universidad de Sevilla 18 de agosto de 2015 Resumen Es este documento
Más detallesArboles Binarios de Búsqueda
Arboles Binarios de Búsqueda Algoritmos y Estructuras de Datos Departamento de Electricidad y Electrónica (UPV/EHU) Arboles Binarios de Búsqueda p.1/52 Arboles Binarios Arbol binario: árbol ordenado de
Más detallesEstructura de Datos. Índice
TEMA 5. ÁRBOLES (I) 1 Índice 1. Concepto de árbol 2. Árboles binarios 1. Especificación informal del TAD árbol binario 2. Implementación del TAD árbol binario 3. Recorrido de un árbol binario 4. Árboles
Más detallesSEMINARIO DE ESPECIFICACIONES ALGEBRAICAS
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º, Año 2003/2004 SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Contenidos: 1. Descripción general de Maude 2. Comandos básicos 3. Formato
Más detallesTema 1. Introducción a las estructuras y tipos de datos
Tema 1. Introducción a las estructuras y tipos de datos http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia,bmartine,morales,sanchiz}@icc.uji.es Estructuras
Más detallesAnálisis amortizado El plan:
Análisis amortizado El plan: Conceptos básicos: Método agregado Método contable Método potencial Primer ejemplo: análisis de tablas hash dinámicas Montículos agregables (binomiales y de Fibonacci) Estructuras
Más detallesTecnólogo Informático- Estructuras de Datos y Algoritmos- 2009
Árboles Ejemplos de estructuras arborescentes: con forma de árbol Regla de Alcance: los objetos visibles en un procedimiento son aquellos declarados en él mismo o en cualquier ancestro de él (cualquier
Más detallesTema 09: TAD Árbol binario
Tema 09: TAD Árbol binario M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Introducción El árbol binario
Más detallesInstituto de Computación - Facultad de Ingeniería - Universidad de la República
Parcial de Programación 2 Julio de 2011 Generalidades: La prueba es individual y sin material. Duración: 3hs. Sólo se contestan dudas acerca de la letra de los ejercicios. Escriba las hojas de un sólo
Más detallesUniversidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS
Especificación algebraica ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS Un tipo abstracto de datos se determina por las operaciones asociadas, incluyendo constantes que se consideran como operaciones sin
Más detallesIntroducción a los tipos abstractos de datos
Introduccin a los tipos abstractos de datos o Definiciones o TAD s básicos o Representaciones básicas Estructuras de datos, curso 2005/06 I.T.Informática de Sistemas Universidad de Valladolid Concepto
Más detallesCONJUNTOS Y RELACIONES BINARIAS
UNIVERSIDAD CATÓLICA ANDRÉS BELLO FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA INFORMÁTICA CÁTEDRA DE LÓGICA COMPUTACIONAL CONJUNTOS Y RELACIONES BINARIAS INTRODUCCIÓN Intuitivamente, un conjunto es una
Más detallesESTRUCTURAS 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 detallesCI2126 PRÁCTICA 9: TAD COLA. 1) Implemente las operaciones C_Insert y C_Remove del TAD COLA usando a. un arreglo. La estructura sería:
CI2126 PRÁCTICA 9: TAD COLA. 1) Implemente las operaciones C_Insert y C_Remove del TAD COLA usando a. un arreglo La estructura sería: typedef struct s_cola ELEM elementos[max]; int primero,ultimo; STRUCTCOLA,*COLA;
Más detallesLaboratorio 7 Motor de búsqueda web basado en el TAD Árbol Binario de Búsqueda GUIÓN DEL LABORATORIO
Laboratorio 7 Motor de búsqueda web basado en el TAD Árbol Binario de Búsqueda GUIÓN DEL LABORATORIO 1.- Objetivos del laboratorio Diseño de clases en C++ Comprensión y uso del TAD Árbol Binario de Búsqueda
Más detallesEstructuras de Datos y Algoritmos. Árboles de Expresión
Estructuras de Datos y Algoritmos Árboles de Expresión Año 2014 Introducción Los avances tecnológicos producen día a día una gran cantidad de información que debe ser almacenada y procesada en forma eficiente.
Más detallesAlgoritmos 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 detallesCOLAS. GRUPO # 22 Alumnos: Aguilar Elba Barrios Miguel Camacho Yaquelin Ponce Rodríguez Jhonny
COLAS 2002 GRUPO # 22 Alumnos: Aguilar Elba Barrios Miguel Camacho Yaquelin Ponce Rodríguez Jhonny ESTRUCTURA DE DATOS TEMA 4 Estructura de datos Cola ÍNDICE 4.1. Definición y ejemplos...3 4.2. El TAD
Más detallesEn cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.
Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa
Más detallesRelaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d
Relaciones binarias En esta sección estudiaremos formalmente las parejas de objetos que comparten algunas características o propiedades en común. La estructura matemática para agrupar estas parejas en
Más detallesProfesorado de Informática Ciencias de la Computación INET- DFPD Matemática I - Matemática Discreta usando el computador Ing. Prof.
Árboles Profesorado de Informática Ciencias de la Computación INET- DFPD Matemática I - Matemática Discreta usando el computador Ing. Prof. Paula Echenique Una de las estructuras de datos más importantes
Más detallesUNIVERSIDAD NACIONAL DE INGENIERÍA CENTRO DE EXTENSIÓN Y PROYECCIÓN SOCIAL
UNIVERSIDAD NACIONAL DE INGENIERÍA ALGORITMOS Y ESTRUCTURA CERTIFICA ORGANIZA Mayor Información: informes@uni.edu.pe Visite Nuestra Web http://www.ceps.uni.edu..pe OBJETIVOS GENERALES - Diseñar algoritmos
Más detallesTEMA 3. Árboles. Objetivos. Contenidos. Bibliografía. Básica
TEMA 3. Árboles Objetivos En este tema se estudia una de las estructuras de datos no lineal más importante en computación, el árbol. Comenzaremos introduciendo la terminología asociada a los árboles y
Más detallesÁrboles y esquemas algorítmicos. Tema III
Árboles y esquemas algorítmicos Tema III Bibliografía Tema III (lecciones 15 a 22) del libro Campos Laclaustra, J.: Estructuras de Datos y Algoritmos, Prensas Universitarias de Zaragoza, Colección Textos
Más detallesEstructura de Datos. Unidad V Estructuras no lineales estáticas y dinámicas. (Árboles y grafos)
Ing. En Sistemas Computacionales Estructura de Datos Unidad V Estructuras no lineales estáticas y dinámicas. (Árboles y grafos) Ing. Néstor Alejandro Carrillo López Arboles Un árbol es un conjunto finito
Más detallesDefinición recursiva de los árboles
Árboles Un árbol es una estructura de datos jerarquizada ada dato reside en un nodo, y existen relaciones de parentesco entre nodos: padre, hijo, hermano, ascendiente, descendiente, etc. Ejemplo: apítulos
Más detallesMANUAL BÁSICO DEL LENGUAJE SQL
MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4
Más detallesClase 32: Árbol balanceado AVL
Clase 32: Árbol balanceado AVL http://computacion.cs.cinvestav.mx/~efranco @efranco_escom efranco.docencia@gmail.com (Prof. Edgardo A. Franco) 1 Contenido Problema de los árboles binarios de búsqueda Variantes
Más detallesNombre: Francis Ariel Jiménez Zapata. Matricula: 2010-0077. Tema: Trabajando con Windows Server 2008. Materia: Sistema Operativo II.
Nombre: Francis Ariel Jiménez Zapata Matricula: 2010-0077 Tema: Trabajando con Windows Server 2008 Materia: Sistema Operativo II Grupo: 2 Facilitador: José Doñe Crear y administrar grupos en Active Directory
Más detallesINSTITUTO TECNOLÓGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES
OBJETIVO: El estudiante desarrollará aplicaciones mediante la implementación de estructuras de datos basadas en Pilas. MATERIAL Y EQUIPO NECESARIO: Papel y lápiz Se recomienda la comprobación de los ejercicios
Más detallesPráctica 2 Gráficos Vectoriales con SVG (versión 29.09.14)
Práctica 2 Gráficos Vectoriales con SVG (versión 29.09.14) Programación 3 Curso 2011-2012 Departamento de Lenguajes y Sistemas Informáticos Universidad de Alicante 1. Introducción En esta segunda práctica
Más detallesEstructura de Datos Unidad 6: ARBOLES
Estructura de Datos Unidad 6: ARBOLES A. CONCEPTO DE ARBOL B. TIPOS DE ARBOL C. ARBOL BINARIO D. IMPLEMENTACION DE UN ARBOL BINARIO E. PROYECTO Introducción En ciencias de la informática, un árbol es una
Más detallesSQL Server 2008 Bootcamp Día 2. SQL 2008 HierarchyID
SQL Server 2008 Bootcamp Día 2 SQL 2008 HierarchyID Información sobre versiones beta Toda la información y ejemplos respectivos, son relativos a la beta pública CTP5 de SQL Server 2008 Comandos y funcionalidades
Más detallesAPLICATECA. didimo Marketing. Manual de usuario. By DIDIMO Servicios Móviles. www.telefonica.es
APLICATECA didimo Marketing Manual de usuario. By DIDIMO Servicios Móviles www.telefonica.es APLICATECA INDICE INDICE... 2 1 QUÉ ES DIDIMO MARKETING?... 3 2 MENÚ PRINCIPAL... 4 2.1 CAMPAÑAS... 4 2.1.1
Más detallesProgramación II Árboles binarios de búsqueda (ABB)
Programación II Árboles binarios de búsqueda (ABB) Definición Un árbol binario de búsqueda(abb) a es una estructura de datos de tipo árbol binario en el que para todos sus nodos, el hijo izquierdo, si
Más detalles{} representa al conjunto vacío, es decir, aquel que no contiene elementos. También se representa por.
2. Nociones sobre Teoría de Conjuntos y Lógica Para llevar a cabo nuestro propósito de especificar formalmente los problemas y demostrar rigurosamente la correctitud de nuestro programas, introduciremos
Más detallesPrimer 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 detallesA) PREORDEN B) INORDEN C) POSTORDEN D) NIVELES
Capitulo 5. Arboles 1. Al recorrer el siguiente árbol en se visitan más nodos para llegar al número 38. Justifique su respuesta mostrando cada uno de los recorridos. Tipo de Recorrido Recorrido A) PREORDEN
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática
1.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 detallesOrganización de Computadoras
Organización de Computadoras Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Segundo Cuatrimestre de 2015 Proyecto N 1 Programación en Lenguaje C El objetivo principal
Más detallesSistema de Ficheros. Sistemas Operativos - ITIG. Álvaro Polo Valdenebro. Abril 2009. apoloval@gsyc.es. GSyC - 2009 Introducción 1
Sistema de Ficheros Sistemas Operativos - ITIG Álvaro Polo Valdenebro apoloval@gsyc.es Abril 2009 GSyC - 2009 Introducción 1 c 2009 GSyC Algunos derechos reservados. Este trabajo se distribuye bajo la
Más detallesEstructuras de Datos y Algoritmos
Estructuras de Datos y Algoritmos Tema 5.1. Árboles. Árboles binarios y generales Prof. Dr. P. Javier Herrera Contenido 1. Introducción 2. Terminología 3. Árboles binarios 4. Árboles generales Tema 5.1.
Más detallesEjemplos: Sean los conjuntos: A = { aves} B = { peces } C = { anfibios }
La Teoría de Conjuntos es una teoría matemática, que estudia básicamente a un cierto tipo de objetos llamados conjuntos y algunas veces, a otros objetos denominados no conjuntos, así como a los problemas
Más detallesEstructura 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 detallesHerramientas computacionales para la matemática MATLAB: Arreglos
Herramientas computacionales para la matemática MATLAB: Arreglos Verónica Borja Macías Marzo 2013 1 Arreglos Un arreglo es una estructura que MATLAB utiliza para almacenar y manipular datos. Es una lista
Más detallesPHPMYADMIN Y MYSQL. Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin.
PHPMYADMIN Y MYSQL Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin. PhpMyAdmin es una herramienta para la administración del servidor de base de datos MySQL que dispone
Más detallesSistemas de producción y búsqueda de soluciones. Area de Computación e Inteligencia Artificial 1
Sistemas de producción y búsqueda de soluciones Area de Computación e Inteligencia Artificial 1 Técnicas de búsqueda Resolución de problemas en Inteligencia Artificial. En general, podemos afirmar que
Más detallesMultiBase Cosmos. Notas a la versión 4.4, release 1. BASE 100, S.A. www.base100.com
MultiBase Cosmos Notas a la versión 4.4, release 1 BASE 100, S.A. www.base100.com Índice IMPLEMENTACIONES... 3 MÉTODOS DE LA CLASE SIMPLECONTROL... 4 MÉTODOS DE LA CLASE INTEGER... 4 MÉTODOS DE LA CLASE
Más detallesEstructura de datos y de la información Boletín de problemas - Tema 7
Estructura de datos y de la información Boletín de problemas - Tema 7 1. Un concesionario de coches tiene un número limitado de M modelos, todos en un número limitado de C colores distintos. Cuando un
Más detallesPara representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones:
2. Conjuntos 2.1 Introducción El concepto de conjunto, de singular importancia en la ciencia matemática y objeto de estudio de una de sus disciplinas más recientes, está presente, aunque en forma informal,
Más detallesANÁLISIS DESCRIPTIVO CON SPSS
ESCUELA SUPERIOR DE INFORMÁTICA Prácticas de Estadística ANÁLISIS DESCRIPTIVO CON SPSS 1.- INTRODUCCIÓN Existen dos procedimientos básicos que permiten describir las propiedades de las distribuciones:
Más detallesOBJETIVOS ÍNDICE MÓDULO 1: ACCESS XP 1ª PARTE
OBJETIVOS El objetivo de este curso es descubrir cómo utilizar una de las herramientas más utilizadas en la gestión y ordenación de datos de las empresas: la Base de Datos. Descubrir cómo diseñar, crear,
Más detallesPRÁCTICA No. 13 ÁRBOL BINARIO DE BÚSQUEDA
INSTITUTO POLITÉCNICO NACIONAL SECRETARIA ACADÉMICA DIRECCIÓN DE EDUCACIÓN SUPERIOR ESIME CULHUACAN NOMBRE ALUMNO: FECHA DIA MES AÑO INGENIERÍA EN COMPUTACIÓN ASIGNATURA 1. Objetivo Apellido paterno ESTRUCTURAS
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS GRADO EN INGENIERÍA INFORMÁTICA SEGUNDO CURSO DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO ESCUELA POLITÉCNICA SUPERIOR UNIVERSIDAD DE CÓRDOBA CURSO ACADÉMICO: 2011
Más detallesIng. Manuel Ramírez López ITESCA
ANTOLOGÍA DE ESTRUCTURA DE DATOS 2 Ing. Manuel Ramírez López ITESCA Estructura de Datos Antología de la Materia 2 Instituto Tecnológico Superior de Cajeme Carretera Internacional Km. 2 Teléfono (644) 415
Más detalles2. Tipos abstractos de datos TEMA 3: SEMÁNTICA AXIOMÁTICA. 2. Tipos abstractos de datos. 2. Tipos abstractos de datos. 2. Tipos abstractos de datos
TEMA 3: SEMÁNTICA AXIOMÁTICA 1. Semántica axiomática de un lenguaje de programación Para poder utilizar tipos estructurados en los programas, será necesario tenerlos definidos como Tipos Abstractos de
Más detallesIntroducción al lenguaje Java Práctica Editor de Línea
Introducción al lenguaje Java Práctica Editor de Línea (Diciembre 2006) 1 Introducción al lenguaje Java Práctica Editor de Línea Dpto. LSIIS. Unidad de Programación Normas y Objetivos Objetivo: el objetivo
Más detallesESTRUCTURAS DE DATOS ÁRBOLES 143
ESTRUCTURAS DE DATOS ÁRBOLES 143 TEMA 4. ÁRBOLES 4.1. CONCEPTOS GENERALES. Un árbol es una estructura de datos ramificada (no lineal) que puede representarse como un conjunto de nodos enlazados entre sí
Más detallesEstructuras de datos y algoritmos
Estructuras de datos y algoritmos 1. Introducción 2. Estructuras de datos lineales 3. Estructuras de datos jerárquicas 4. Grafos y caminos 5. Implementación de listas, colas, y pilas 6. Implementación
Más detallesEstructura de datos y de la información Boletín de problemas - Tema 10
Estructura de datos y de la información Boletín de problemas - Tema 10 1. En el caso de que sea posible, dar un ejemplo de los siguientes puntos. Si no, explicar por qué no lo es. Considerar un valor genérico
Más detalles