Estucturas de datos

1,177 views
1,115 views

Published on

Estucturas de datos

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,177
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Estucturas de datos

  1. 1. .mat_foizlïne@gmazïcom ‘UGG San ¿Migueí Lic ¿Marvin Romero (Blog www. nukemitgfia. net ‘Foro
  2. 2. magfonfineficjmaiíiïom ‘UQB San ¿Migucí Lic. flíaniin ïRpmero Introducción Todas las variables que se han considerado hasta ahora son de tipo simple. Una variable de tipo simple consiste de una sola caja de memoria y sólo puede contener un valor cada vez. Una variable de tipo estructurado consiste en toda una colección de casillas de memoria. iBfog wuruv. mrtemirfomet ‘I-‘oro
  3. 3. marfonlïtieéïgmaiíiïom ‘UQKB San Llíigzref Lic. filianiin = Rpmcro Introducción 0 Los tipos de datos estudiados: entero, real, alfabético son considerados como datos de tipo simple, puesto que una variable que se define con alguno de estos tipos sólo puede almacenar un valor a la vez, es decir, existe una relación de uno a uno entre la variable y el número de elementos (valores) que es capaz de almacenar. En cambio un dato de tipo estructurado, como el arreglo, puede almacenar más de un elemento (Valor) a la vez, con la condición de que todos los elementos deben ser del mismo tipo, es decir, que se puede tener un conjunto de datos enteros, reales, etc. iBlbg www. m icemírr fo. net ‘Foro
  4. 4. marfonfizxe@gmaií. rïom ‘UQB San LMgueÍ Lic. ¿Marvin ïRpmero Da'tos Estructurados Estructura de Datos es una colección de datos que se caracterizan por su organización y las operaciones que se definen en ella. Los datos de tipo estándar pueden ser organizados en diferentes estructuras de datos: estáticas y dinámicas. tBfog usaran ¡nicemírfontet ‘I-bro
  5. 5. madbnfirxe@gmaií. com ‘UQÍB San ‘Mzgutí Lic. Marvin Romero Estructura de Datos estáticas: 0 Son aquellas en las que el espacio ocupado en memoria se define en tiempo de compilación y no puede ser modificado durante la ejecución del programa. Corresponden a este tipo los arrays y registros (Bbg tvwav’. Intreminfanet ‘I-bro
  6. 6. marfonfirxeúïgmaiíifiom ‘UQKB San ¿Mzyucí Lic. ¿Manivin íRpmtm Estructuras de Datos Dinámicas 0 Son aquellas en las que el espacio ocupado en memoria puede ser modificado en tiempo de ejecución. Corresponden a este tipo las listas, árboles y grafos . Estas estructuras no son soportadas en todos los lenguajes. La elección de la estructura de datos idónea dependerá de la naturaleza del problema a resolver y, en menor medida, del lenguaje. Las estructuras de datos tienen en común que un identificador, nombre, puede representar a múltiples datos individuales. rBfog ururur. miremirrfontet Toro
  7. 7. magfonfizie@gmaií. tfom ‘UQKB San ¿Migueí Lic. ilianiíin = Rpmcro ! ' ' W F n! h Un arreglo (array) es una colección de datos del mismo tipo, que se almacenan en posiciones consecutivas de memoria y reciben un nombre común. Para referirse a un determinado elemento de un array se deberá utilizar un índice, que especifique su posición relativa en el array. Un arreglo es una colección finita, homogénea y ordenada de elementos. Finita: Todo arreglo tiene un límite; es decir, debe determinarse cuál será el número máximo de elementos que podrán formar parte del arreglo. Homogénea: Todos los elementos del arreglo deben ser del mismo tipo. Ordenada: Se puede determinar cuál es el primer elemento, el segundo, el tercero, ... . y el n-ésimo elemento. rBfog tuuruv. ¡rutemirfontet ‘I-‘oro
  8. 8. madbnfirxe@gmaií. com ‘UQKB San ‘Mxgutí Lic. ¿Manda Romero Clasificación de los Arrays 0 Los arreglos se clasifican de acuerdo con el número de dimensiones que tienen. Así se tienen los: 0 - Unidimensionales (vectores) - Bidimensionales (tablas o matrices) - Multidimensionales (tres o más dimensiones) tBhg urumu. Inicemirfo. net ‘I-bro
  9. 9. """. 'Ï’l’"(”"“’@.4]ma¡[rom ‘LÏGÏB .811): ¿Migueí La‘. wlan-m Romero A. Unidimensional — A. Bidimensional Elements) 1 Elemento 1.1 a Elemento 1.n Elemento 2.1 i Elementolri Elemento 3 1 j Elemento 3,n 13111,; u 14 tu‘. micemírgflv. m’! ‘Foro
  10. 10. mar_fon(ïne@gmai{hïom ‘UQIB San ¿Miguef Lic. ïManíin = Rpmcro A. Multimensional ‘Element-a El: rr. c nte: - 1a, ] . l tïL, ti, l tBlbg u rurw. tnicemírgfo. net ‘Foro
  11. 11. magfonfinefiqmaiíiïom ‘UQKB San ¿Mxggztcí Lic. ilianiin = Rpmcm Pgolalema uponga que se desea desarrollar un programa para: 1.Leer una lista de calificaciones de un examen ¿Encontrar su media 3.Escribir una lista de las calificaciones mayores que la media 4.Ordenar la lista de las calificaciones en orden ascendente. Supongamos también que hay 1oo calificaciones. Debemos utilizar 1oo variables diferentes notai, notaz, .. .., notaioo, de ese modo son 1oo direcciones diferentes de memoria para almacenar las calificaciones del examen. Se imagina declarar las 1oo variables, ¿cuántas instrucciones involucra? rBfog tm-urw. ¡nrtemirfontet ‘I-‘oro
  12. 12. marfonfinefiqmaiíiïom ‘UQKB San LMxgucÍ Lic. ilíarvin Romero Problema Var Nota1,nota2,nota3, . ... ... .. nota1oo: entero (En la declaración real de un programa no pueden usarse puntos suspensivos, por lo tanto serán 1oo veces) . En la fase de lectura de datos, serán también 1oo veces las instrucciones para ir leyendo cada valor. Leer (nota1, nota2,nota3, . ... ... .. , notaioo) rBfog tm-tuur. ¡nttemirfontet ‘I-bro
  13. 13. majonfineéïgmaiícom ‘UQÍB San ‘Mzgutí Lic. ‘Jiamin Romero Problema 0 Para calcular la media: Media <_- (nota1+nota2-_+ . ... . . .+nota1oo)/1oo _ _ Para la lista de calificaciones mayores que la media, deberá también irse comparando una por una: Si notai > media entonces escribir (notan) Fin_si Si notaz > media entonces escribir (notaz) Fin_si Si notaioo > media entonces escribir (notaioo) Fin_si 0 Y después de más de 45o líneas de código. ... . ¡Falta ordenar la lista de calificaciones en orden ascendente! (Bbg ururw. Iniceminfanet ‘I-bro
  14. 14. marfonfizit@gmaií. iïom ‘UQB San ¿Migueí Lic. ill-lanrin ïRpmero Problema Después que aprendas a usar arreglos verás cómo se ahorra instrucciones porque es fácil recorrer toda la lista de notas con unas pocas instrucciones. En el caso anterior, cuando el acceso a la información es secuencial, sólo se puede acceder a un elemento buscando desde el principio de la lista, y esto es algo lento. Lo que se necesita es una estructura de acceso directo que permita almacenar y recuperar los datos directamente especificando su posición en la estructura, de esa manera se requerirá el mismo tiempo para acceder al elemento de la posición 1oo que el de la posición 5. tBfog usaran tnicemírfontet ‘I-‘oro
  15. 15. marfonfizie@gmaif. aïom ‘UQKB San 11191146T Lic. fManrin = Rpmcra Problema 0 También preferiremos que esta estructura se almacene en memoria principal para que su almacenaje y recuperación sea más rápida. Es por ello que existen los arreglos, que están organizados en una secuencia de elementos, todos del mismo tipo y se puede acceder a cada elemento directamente especificando su posición en esta secuencia. tBlbg u-wun tnicemírrfo. net ‘Foro

×