SlideShare une entreprise Scribd logo
1  sur  18

Mauricio González Ahuactzin
Benemérita Universidad Autónoma de Puebla
Una estructura de datos es una colección de datos que pueden ser
caracterizados por su organización y las operaciones que se definen
en ella.
Las estructuras de datos son muy importantes en los sistemas de
computadora.
Los tipos de datos mas frecuentes utilizados en los diferentes
lenguajes de programación son: Datos Simples y Datos
Estructurados.
Estática
• Son aquéllas en las que el
tamaño ocupado en memoria
se define antes de que el
programa se ejecute y no
puede modificarse dicho
tamaño durante la ejecución
del programa
• Están implementada en los
lenguajes: arreglos (vectores
/ matrices)
Dinámica
• No tiene las limitaciones o
restricciones en el tamaño de
memoria ocupada que son
propias de las estructuras
estáticas.
• Las estructuras dinámicas
por excelencia son las: listas
(enlazadas, pilas, colas) y
árboles (binarios, árbol-b)
• No están compuestos de otras estructuras de datos, los mas
frecuentes y utilizados por casi todos los lenguajes son:
Enteros, reales y carácter (char) , siendo los tipos lógicos,
subrango y enumerativos.
• Los tipos de datos simples pueden ser organizados en
diferentes estructuras de datos: estáticas y dinámica.
• Los tipos de datos simples tienen como característica común
que cada variable representa a un elemento.
• Es un tipo estructurado o formado por valores simples. Los
lenguajes de programación aportan gran cantidad de tipos
estructurados: uniones, registros conjuntos, arrays, lista,
arboles.
• Están construidos basados en tipos de datos primitivos; el
ejemplo más representativo es la cadena de caracteres.
• Tiene como característica común que un identificador
(nombre) puede representar a múltiples datos individuales.
Un arreglo es un conjunto finito y ordenado de elementos
homogéneos. La propiedad “ordenado ” significa que el elemento
primero, segundo, tercero, …n-ésimo de un arreglo puede ser
identificado.
Los elementos de un arreglos son homogéneos, es decir, del mismo
tipo de datos
Los arreglos se conocen también como también como matrices en
matemáticas y tablas en cálculos financieros
El tipo mas simple arreglo es el arreglo unidimensional o vector
(matriz de una dimensión).
Los vectores se almacenan en memoria central de la
computadora en un orden adyacente.
El subíndice o índice de un elemento (1,2…i, n) designa su
posición en la ordenación del vector. Otras posibles notaciones
del vector son:
a1 a2 a3,…..ai……. an
A(1), A(2),….A(i),…A(n)
Nombre (1) Nombre (2) ……. Nombre (I) ………
Nombre
(N)
Posición o subíndice
• Un vector, como ya se ha mencionado, es una secuencia
ordenada de elementos como: X(1), X(2),…..,X(n)
• El limite inferior no tiene porque empezar en uno. El vector L
L(0), L(1), L(2), L(3), L(4), L(5)
• Las operaciones que se pueden realizar con vectores durante el
proceso de resolución de un problema son:
i. Asignación
ii. Lectura/escritura
iii. Recorrido (acceso secuencial)
iv. Actualizar (añadir, borrar, insertar)
v. Ordenación
vi. búsqueda
• La asignación de valores a un elemento del vector se
realizará con la construcción e asignación
A(20) 5 asigna el valor de 5 al elemento 20 del vector A
Si se desea asignar valores a todos los elementos de un vector,
se deben recurrir a estructuras repetitivas (desde, mientras o
repetir) e incluso selectivas (si-entonces, según).
• La lectura/ escritura de datos en arreglos u operaciones de
entrada/salida normalmente se realizan con estructuras
repetitivas, aunque puede también hacerse con estructuras
selectivas. Las instrucciones simples de lectura/escritura se
representan como:
Leer A lectura del vector A
Escribir A escritura del vector A
Leer V(5) leer el elemento V(5) del vector V
• Se puede acceder a los elementos de un vector para introducir datos
(leer) en él o bien para visualizar su contenido (escribir). A la
operación de efectuar una acción general sobre todos los elementos
de un vector se la denomina recorrido del vector. Estas operaciones
se realizan utilizando estructuras repetitivas.
Ejemplo:
Algoritmo: Leer_vector
tipo
arreglo[1..20] de entero: final
var final: f
inicio
desde i ! 1 hasta 20 hacer
leer(F[i])
fin_
• La operación de actualizar un vector puede constar a su vez de
tres operaciones elementales: añadir elementos, insertar
elementos, borrar elementos.
• Se denomina añadir datos a un vector la operación de añadir un
nuevo elemento al final del vector.
• La única condición necesaria para esta operación consistirá en
la comprobación de espacio de memoria suficiente para el
nuevo elemento
Se tiene un arreglo NOM de 6 elementos de nombres de personas, en orden alfabético y se
desea insertar un nuevo nombre.
{Calcular la posición ocupada por el elemento a insertar} P
{Inicializar contador de inserciones} i n.
mientras i >= P hacer
{transferir el elemento actual hacia abajo, a la posición i+1}
NOM(i+1) ----> NOM(i)
{decrementar contador}
i ----> i-1
fin_mientras
{Insertar el elemento en la posición P}
NOM(P) ----> ‘nuevo elemento’
{Actualizar el contador de elementos del vector}
n ----> n+1
fin
Estos vectores son elementos de datos escritos en una secuencia. Sin
embargo, existen grupos de datos que son presentados mejor en forma de
tabla o matriz con dos más subíndices.
Se pueden definir tablas o matrices como arreglos multidimensionales,
cutos elementos se pueden referenciar por dos, tres o más subíndices. Los
arreglos no unidimensionales los dividiremos en dos grandes grupos:
Arrays bidimensionales (2 dimensiones)
Arrays unidimensionales: (3 o mas dimensiones)
• El arreglo bidimensional se puede considerar como un vector
de vectores. Es, por consiguiente, un conjunto de elementos,
todos del mismo tipo, en le cual el orden de los componentes
es significativo y en el que se necesitan especificar dos
subíndices para poder identificar a cada elemento del arreglo.
• En notación estándar, normalmente el primer subíndice se
refiere a la columna del arreglo. Es decir, B(I,J) es el elemento
de B que ocupa la I.a y la J.a columna.
• Un ejemplo típico de un arreglo bidimensional es un tablero de
ajedrez. Se puede representar cada posición o casilla del
tablero mediante un arreglo, en el que cada elemento es una
casilla y en el que su valor será un código representativo de
cada figura del juego
• Joyanes Aguilar, Luis 1990:Fundamentos de programación
(algoritmos y estructuras de datos), México, Df. :Mc Graw Hill

Contenu connexe

Tendances

Tendances (10)

Youblisher.com 368313-manual de-sql_server_2008_reporting_service
Youblisher.com 368313-manual de-sql_server_2008_reporting_serviceYoublisher.com 368313-manual de-sql_server_2008_reporting_service
Youblisher.com 368313-manual de-sql_server_2008_reporting_service
 
Ingles Técnico II Informática
Ingles Técnico II InformáticaIngles Técnico II Informática
Ingles Técnico II Informática
 
Normalización de Bases de Datos (Hasta Boyce-Codd)
Normalización de Bases de Datos (Hasta Boyce-Codd)Normalización de Bases de Datos (Hasta Boyce-Codd)
Normalización de Bases de Datos (Hasta Boyce-Codd)
 
Tema3 modelo entidadrelacion
Tema3 modelo entidadrelacionTema3 modelo entidadrelacion
Tema3 modelo entidadrelacion
 
Ejemplo de Proyecto de Software
Ejemplo de Proyecto de SoftwareEjemplo de Proyecto de Software
Ejemplo de Proyecto de Software
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
 
Guia normalización
Guia normalizaciónGuia normalización
Guia normalización
 
Arreglos en PSeInt
Arreglos en PSeIntArreglos en PSeInt
Arreglos en PSeInt
 
Arreglos
ArreglosArreglos
Arreglos
 
Arreglos de registros
Arreglos de registros Arreglos de registros
Arreglos de registros
 

Similaire à Estructura de datos (Arreglos)

Estructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptEstructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptAndersonHernandezara
 
Cap06 arreglos y vectores.
Cap06 arreglos y vectores.Cap06 arreglos y vectores.
Cap06 arreglos y vectores.Miguel Martinez
 
Revista digital vectores y matrices
Revista digital vectores y matricesRevista digital vectores y matrices
Revista digital vectores y matricesflaquita_dany
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Simeon Bordones
 
Estructuras de datos 1(Arrays y Estructuras)
Estructuras de datos 1(Arrays y Estructuras)Estructuras de datos 1(Arrays y Estructuras)
Estructuras de datos 1(Arrays y Estructuras)jairml
 
Estructuras de datos y estructuras de almacenamiento miguel
Estructuras de datos y estructuras de almacenamiento miguelEstructuras de datos y estructuras de almacenamiento miguel
Estructuras de datos y estructuras de almacenamiento miguelMiguelDiaz369
 
Estructuras de datos y estructuras de almacenamiento migueld
Estructuras de datos y estructuras de almacenamiento migueldEstructuras de datos y estructuras de almacenamiento migueld
Estructuras de datos y estructuras de almacenamiento migueldMiguelDiaz369
 
Apuntes
ApuntesApuntes
ApuntesIESCH
 
Clase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y ArreglosClase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y Arreglossalomonaquino
 
Bryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan Gordillo
 
Estructuras de datos C++, unidimensionales y bidimencionales
Estructuras de datos C++, unidimensionales y bidimencionalesEstructuras de datos C++, unidimensionales y bidimencionales
Estructuras de datos C++, unidimensionales y bidimencionalesDanielGonzalez184830
 

Similaire à Estructura de datos (Arreglos) (20)

Estructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptEstructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.ppt
 
Cap06 arreglos y vectores.
Cap06 arreglos y vectores.Cap06 arreglos y vectores.
Cap06 arreglos y vectores.
 
Unidad5
Unidad5Unidad5
Unidad5
 
Revista digital vectores y matrices
Revista digital vectores y matricesRevista digital vectores y matrices
Revista digital vectores y matrices
 
Arreglos
ArreglosArreglos
Arreglos
 
Areglos y registros
Areglos y registrosAreglos y registros
Areglos y registros
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos
 
Unidad 7. Arreglos Sullin Santaella
Unidad 7. Arreglos Sullin SantaellaUnidad 7. Arreglos Sullin Santaella
Unidad 7. Arreglos Sullin Santaella
 
Estructuras de datos 1(Arrays y Estructuras)
Estructuras de datos 1(Arrays y Estructuras)Estructuras de datos 1(Arrays y Estructuras)
Estructuras de datos 1(Arrays y Estructuras)
 
Estructuras de datos y estructuras de almacenamiento miguel
Estructuras de datos y estructuras de almacenamiento miguelEstructuras de datos y estructuras de almacenamiento miguel
Estructuras de datos y estructuras de almacenamiento miguel
 
Estructuras de datos y estructuras de almacenamiento migueld
Estructuras de datos y estructuras de almacenamiento migueldEstructuras de datos y estructuras de almacenamiento migueld
Estructuras de datos y estructuras de almacenamiento migueld
 
Apuntes
ApuntesApuntes
Apuntes
 
Apuntes
ApuntesApuntes
Apuntes
 
Clase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y ArreglosClase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y Arreglos
 
Apuntes
ApuntesApuntes
Apuntes
 
Vectores en programación
Vectores en programaciónVectores en programación
Vectores en programación
 
Bryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglos
 
Analisis de registro
Analisis de registroAnalisis de registro
Analisis de registro
 
Arrayoareglos
ArrayoareglosArrayoareglos
Arrayoareglos
 
Estructuras de datos C++, unidimensionales y bidimencionales
Estructuras de datos C++, unidimensionales y bidimencionalesEstructuras de datos C++, unidimensionales y bidimencionales
Estructuras de datos C++, unidimensionales y bidimencionales
 

Dernier

Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicakiaranoemi
 
Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............osoriosantiago887
 
bombas-hidraulicas para permitir transporte en una instalación
bombas-hidraulicas para permitir  transporte en una instalaciónbombas-hidraulicas para permitir  transporte en una instalación
bombas-hidraulicas para permitir transporte en una instalaciónLuisLobatoingaruca
 
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALFUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALPamelaGranda5
 
SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxOSCARADRIANMEDINADUR
 
Análisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaAnálisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaJoellyAlejandraRodrg
 
presentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionespresentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionesCarlosA427496
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSLuisLopez273366
 
Unidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivosUnidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivossolareslionel9
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfrudy cabezas
 
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfINSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfautomatechcv
 
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargar
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargarMECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargar
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargarAdrielQuispeLpez
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptxJOSLUISCALLATAENRIQU
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...jfmolina199
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptxHenryApaza12
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfEberCV1
 
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxMONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxValentinaRavelo5
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraJairoMaxKevinMartine
 
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURAL
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURALFOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURAL
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURALRiveraPemintelAlejan
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfElenaNagera
 

Dernier (20)

Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganica
 
Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............
 
bombas-hidraulicas para permitir transporte en una instalación
bombas-hidraulicas para permitir  transporte en una instalaciónbombas-hidraulicas para permitir  transporte en una instalación
bombas-hidraulicas para permitir transporte en una instalación
 
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALFUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
 
SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptx
 
Análisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaAnálisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadística
 
presentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionespresentación de topografía y sus aplicaciones
presentación de topografía y sus aplicaciones
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
 
Unidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivosUnidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivos
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdf
 
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfINSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
 
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargar
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargarMECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargar
MECANICA DE FLUIDOS 1 mecánica de fluidos en documento para descargar
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxMONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas Estructura
 
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURAL
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURALFOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURAL
FOLIACIONES Y LINEACIONES GEOLOGÍA ESTRUCTURAL
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
 

Estructura de datos (Arreglos)

  • 1.  Mauricio González Ahuactzin Benemérita Universidad Autónoma de Puebla
  • 2. Una estructura de datos es una colección de datos que pueden ser caracterizados por su organización y las operaciones que se definen en ella. Las estructuras de datos son muy importantes en los sistemas de computadora. Los tipos de datos mas frecuentes utilizados en los diferentes lenguajes de programación son: Datos Simples y Datos Estructurados.
  • 3. Estática • Son aquéllas en las que el tamaño ocupado en memoria se define antes de que el programa se ejecute y no puede modificarse dicho tamaño durante la ejecución del programa • Están implementada en los lenguajes: arreglos (vectores / matrices) Dinámica • No tiene las limitaciones o restricciones en el tamaño de memoria ocupada que son propias de las estructuras estáticas. • Las estructuras dinámicas por excelencia son las: listas (enlazadas, pilas, colas) y árboles (binarios, árbol-b)
  • 4. • No están compuestos de otras estructuras de datos, los mas frecuentes y utilizados por casi todos los lenguajes son: Enteros, reales y carácter (char) , siendo los tipos lógicos, subrango y enumerativos. • Los tipos de datos simples pueden ser organizados en diferentes estructuras de datos: estáticas y dinámica. • Los tipos de datos simples tienen como característica común que cada variable representa a un elemento.
  • 5. • Es un tipo estructurado o formado por valores simples. Los lenguajes de programación aportan gran cantidad de tipos estructurados: uniones, registros conjuntos, arrays, lista, arboles. • Están construidos basados en tipos de datos primitivos; el ejemplo más representativo es la cadena de caracteres. • Tiene como característica común que un identificador (nombre) puede representar a múltiples datos individuales.
  • 6. Un arreglo es un conjunto finito y ordenado de elementos homogéneos. La propiedad “ordenado ” significa que el elemento primero, segundo, tercero, …n-ésimo de un arreglo puede ser identificado. Los elementos de un arreglos son homogéneos, es decir, del mismo tipo de datos Los arreglos se conocen también como también como matrices en matemáticas y tablas en cálculos financieros
  • 7. El tipo mas simple arreglo es el arreglo unidimensional o vector (matriz de una dimensión). Los vectores se almacenan en memoria central de la computadora en un orden adyacente. El subíndice o índice de un elemento (1,2…i, n) designa su posición en la ordenación del vector. Otras posibles notaciones del vector son: a1 a2 a3,…..ai……. an A(1), A(2),….A(i),…A(n) Nombre (1) Nombre (2) ……. Nombre (I) ……… Nombre (N) Posición o subíndice
  • 8. • Un vector, como ya se ha mencionado, es una secuencia ordenada de elementos como: X(1), X(2),…..,X(n) • El limite inferior no tiene porque empezar en uno. El vector L L(0), L(1), L(2), L(3), L(4), L(5) • Las operaciones que se pueden realizar con vectores durante el proceso de resolución de un problema son: i. Asignación ii. Lectura/escritura iii. Recorrido (acceso secuencial) iv. Actualizar (añadir, borrar, insertar) v. Ordenación vi. búsqueda
  • 9. • La asignación de valores a un elemento del vector se realizará con la construcción e asignación A(20) 5 asigna el valor de 5 al elemento 20 del vector A Si se desea asignar valores a todos los elementos de un vector, se deben recurrir a estructuras repetitivas (desde, mientras o repetir) e incluso selectivas (si-entonces, según).
  • 10. • La lectura/ escritura de datos en arreglos u operaciones de entrada/salida normalmente se realizan con estructuras repetitivas, aunque puede también hacerse con estructuras selectivas. Las instrucciones simples de lectura/escritura se representan como: Leer A lectura del vector A Escribir A escritura del vector A Leer V(5) leer el elemento V(5) del vector V
  • 11. • Se puede acceder a los elementos de un vector para introducir datos (leer) en él o bien para visualizar su contenido (escribir). A la operación de efectuar una acción general sobre todos los elementos de un vector se la denomina recorrido del vector. Estas operaciones se realizan utilizando estructuras repetitivas. Ejemplo: Algoritmo: Leer_vector tipo arreglo[1..20] de entero: final var final: f inicio desde i ! 1 hasta 20 hacer leer(F[i]) fin_
  • 12. • La operación de actualizar un vector puede constar a su vez de tres operaciones elementales: añadir elementos, insertar elementos, borrar elementos. • Se denomina añadir datos a un vector la operación de añadir un nuevo elemento al final del vector. • La única condición necesaria para esta operación consistirá en la comprobación de espacio de memoria suficiente para el nuevo elemento
  • 13. Se tiene un arreglo NOM de 6 elementos de nombres de personas, en orden alfabético y se desea insertar un nuevo nombre. {Calcular la posición ocupada por el elemento a insertar} P {Inicializar contador de inserciones} i n. mientras i >= P hacer {transferir el elemento actual hacia abajo, a la posición i+1} NOM(i+1) ----> NOM(i) {decrementar contador} i ----> i-1 fin_mientras {Insertar el elemento en la posición P} NOM(P) ----> ‘nuevo elemento’ {Actualizar el contador de elementos del vector} n ----> n+1 fin
  • 14. Estos vectores son elementos de datos escritos en una secuencia. Sin embargo, existen grupos de datos que son presentados mejor en forma de tabla o matriz con dos más subíndices. Se pueden definir tablas o matrices como arreglos multidimensionales, cutos elementos se pueden referenciar por dos, tres o más subíndices. Los arreglos no unidimensionales los dividiremos en dos grandes grupos: Arrays bidimensionales (2 dimensiones) Arrays unidimensionales: (3 o mas dimensiones)
  • 15. • El arreglo bidimensional se puede considerar como un vector de vectores. Es, por consiguiente, un conjunto de elementos, todos del mismo tipo, en le cual el orden de los componentes es significativo y en el que se necesitan especificar dos subíndices para poder identificar a cada elemento del arreglo.
  • 16. • En notación estándar, normalmente el primer subíndice se refiere a la columna del arreglo. Es decir, B(I,J) es el elemento de B que ocupa la I.a y la J.a columna.
  • 17. • Un ejemplo típico de un arreglo bidimensional es un tablero de ajedrez. Se puede representar cada posición o casilla del tablero mediante un arreglo, en el que cada elemento es una casilla y en el que su valor será un código representativo de cada figura del juego
  • 18. • Joyanes Aguilar, Luis 1990:Fundamentos de programación (algoritmos y estructuras de datos), México, Df. :Mc Graw Hill