SlideShare uma empresa Scribd logo
1 de 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

Mais conteúdo relacionado

Mais procurados

Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pilajefer
 
Arreglos bidimencionales
Arreglos bidimencionalesArreglos bidimencionales
Arreglos bidimencionalesFernando Solis
 
Introduction to data structure
Introduction to data structureIntroduction to data structure
Introduction to data structureZaid Shabbir
 
Poo 4 arraylist
Poo 4 arraylistPoo 4 arraylist
Poo 4 arraylistjlmanmons
 
Data structure
Data structureData structure
Data structureMohd Arif
 
Basic array in c programming
Basic array in c programmingBasic array in c programming
Basic array in c programmingSajid Hasan
 
Aplicaciòn de las estructuras de datos
Aplicaciòn de las estructuras de datosAplicaciòn de las estructuras de datos
Aplicaciòn de las estructuras de datosK Manuel TN
 
Sparse matrix and its representation data structure
Sparse matrix and its representation data structureSparse matrix and its representation data structure
Sparse matrix and its representation data structureVardhil Patel
 
Union in C programming
Union in C programmingUnion in C programming
Union in C programmingKamal Acharya
 
Mca ii dfs u-1 introduction to data structure
Mca ii dfs u-1 introduction to data structureMca ii dfs u-1 introduction to data structure
Mca ii dfs u-1 introduction to data structureRai University
 
sparse matrix in data structure
sparse matrix in data structuresparse matrix in data structure
sparse matrix in data structureMAHALAKSHMI P
 
Estructuras lineales unidad 3
Estructuras lineales unidad 3Estructuras lineales unidad 3
Estructuras lineales unidad 3eliezerbs
 

Mais procurados (20)

Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pila
 
Arreglos bidimencionales
Arreglos bidimencionalesArreglos bidimencionales
Arreglos bidimencionales
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Introduction to data structure
Introduction to data structureIntroduction to data structure
Introduction to data structure
 
Stack and Queue
Stack and Queue Stack and Queue
Stack and Queue
 
Poo 4 arraylist
Poo 4 arraylistPoo 4 arraylist
Poo 4 arraylist
 
Data structure
Data structureData structure
Data structure
 
Basic array in c programming
Basic array in c programmingBasic array in c programming
Basic array in c programming
 
Listas
ListasListas
Listas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Aplicaciòn de las estructuras de datos
Aplicaciòn de las estructuras de datosAplicaciòn de las estructuras de datos
Aplicaciòn de las estructuras de datos
 
Sparse matrix and its representation data structure
Sparse matrix and its representation data structureSparse matrix and its representation data structure
Sparse matrix and its representation data structure
 
Union in C programming
Union in C programmingUnion in C programming
Union in C programming
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Mca ii dfs u-1 introduction to data structure
Mca ii dfs u-1 introduction to data structureMca ii dfs u-1 introduction to data structure
Mca ii dfs u-1 introduction to data structure
 
sparse matrix in data structure
sparse matrix in data structuresparse matrix in data structure
sparse matrix in data structure
 
Ejercicios del 1 al 9
Ejercicios del 1 al 9Ejercicios del 1 al 9
Ejercicios del 1 al 9
 
Linked list
Linked listLinked list
Linked list
 
Estructuras lineales unidad 3
Estructuras lineales unidad 3Estructuras lineales unidad 3
Estructuras lineales unidad 3
 

Semelhante a 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
 

Semelhante a 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
 

Último

EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxEFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxfranklingerardoloma
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxmiguelmateos18
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOeldermishti
 
FUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdfFUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdfalfredoivan1
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5juanjoelaytegonzales2
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internamengual57
 
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.pptELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.pptRobertoCastao8
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDEdith Puclla
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxjhorbycoralsanchez
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfRonaldLozano11
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfdanielJAlejosC
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheElisaLen4
 
Libro de ingeniería sobre Tecnología Eléctrica.pdf
Libro de ingeniería sobre Tecnología Eléctrica.pdfLibro de ingeniería sobre Tecnología Eléctrica.pdf
Libro de ingeniería sobre Tecnología Eléctrica.pdfCristinCrdova1
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...WeslinDarguinHernand
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCarlosGabriel96
 
Presentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potablePresentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potableFabricioMogroMantill
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfGabrielCayampiGutier
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEduardoBriones22
 

Último (20)

EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxEFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptx
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
FUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdfFUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdf
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.pptELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCD
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdf
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
Libro de ingeniería sobre Tecnología Eléctrica.pdf
Libro de ingeniería sobre Tecnología Eléctrica.pdfLibro de ingeniería sobre Tecnología Eléctrica.pdf
Libro de ingeniería sobre Tecnología Eléctrica.pdf
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
Presentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potablePresentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potable
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 

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