SlideShare a Scribd company logo
1 of 38
Arreglos Unidimensionales y
Bidimensionales
ESTRUCTURAS DE DATOS I
Estructuras de Datos: Conceptos
 Conjunto de datos de tipos iguales o
diferentes que se relacionan entre si y que
se pueden operar como un todo.
Entero, Real, Carácter, Lógico
Datos Simples
Hacen referencia a un único valor a la vez en memoria
Datos Estructurados
Se refieren a un grupo de casillas de memoria
Estáticos
Dinámicos
Arreglos, Registros,
Archivos, Cadenas
Listas, Arboles, Grafos
¿Qué es una Estructura de Datos?
 Una estructura de datos es una forma de organizar un
conjunto de datos elementales con el objetivo de facilitar
su manipulación. Un dato elemental es la mínima
información que se tiene en un programa.(ejemplos de
datos elementales serían int, float, char,etc…)
 Lo que se pretende con las estructuras de datos es facilitar
un esquema lógico para manipular los datos en función del
problema que haya que tratar y el algoritmo para
resolverlo.
¿Qué es una Estructura de Datos?
 En algunos casos la dificultad para resolver un problema
radica en escoger la estructura de datos adecuada. Y, en
general, la elección del algoritmo y de las estructuras de
datos que manipulará estarán muy relacionadas.
Estructuras de Datos: Implementación
 Para implementar alguna estructura de datos,
primero es necesario tener muy claro cómo va a
ser el manejo de memoria.
 La diferencia entre estructuras estáticas y
dinámicas es el manejo de memoria.
Estática
Durante la ejecución
del programa el
tamaño de la
estructura no cambia
Dinámica
Durante la ejecución
del programa el
tamaño de la
estructura puede
cambiar
Estructuras de Datos
Tema: Memoria Estática
Subtema: Conceptos de Arreglos
 Definición: Colección finita, homogenea y ordenada de
elementos. Finita: Porque todo arreglo tiene un límite.
Homogenea: Porque todos los elementos son del mismo tipo.
Ordenada: Porque se puede determinar cuál es el enésimo
elemento.
 Un arreglo tiene dos partes: Componentes e índices
C1 C2 .... Cn
i0 i1 in
Componentes
Índices
 Componentes: Hacen referencia a los elementos que forman el
arreglo.
 Índices: Permiten referirse a los componentes del arreglo en
forma individual.
¿Arreglos o arrays?
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.
Arreglos
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 elmento.
Los arreglos se clasifican de acuerdo con el
número de dimensiones que tienen. Así se
tienen los:
Unidimensionales (vectores)
Bidimensionales (tablas o matrices)
Multidimensionales (tres o más
dimensiones)
Unidimensionales y bidimensionales
Si no existieran los arreglos
Suponga que se desea desarrollar un programa
para:
1. Leer una lista de calificaciones de un examen
2. 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 100
calificaciones. Debemos utilizar 100 variables
diferentes nota1, nota2, ...., nota100, de ese
modo son 100 direcciones diferentes de
memoria para almacenar las calificaciones del
examen. Se imagina declarar las 100
variables.
¿cuántas instrucciones involucra?
Para calcular la media:
Media ¬(nota1+nota2+.......+nota100)/100
Para la lista de calificaciones mayores que la media, deberá
también irse comparando una por una:
Si nota1 > media entonces
escribir (nota1)
Fin_si
Si nota2 > media entonces
escribir (nota2)
Fin_si
Si nota100 > media entonces
escribir (nota100)
Fin_si
Estructuras de Datos
Tema: Memoria Estática
Subtema: Arreglos Unidimensionales
 Son los arreglos más simples y constan de un solo
índice, tambien se llaman vectores.
 Notación: Podría ser de diferentes maneras. Por ej:
Array [0...9] de enteros: Vector
Vector: x
14 43 .... 4
x0 x1 x9
Componentes
Índices
 X hace referencia a todo el vector, mientras que
x0, o x1 hace referencia los elementos en forma
individual
Estructuras de Datos
Tema: Memoria Estática
Subtema: Arreglos Unidimensionales
 Los arreglos se almacenan en forma adyacente, así que su
representación en memoria es:
X0 ,Dirección z; X1 ,Dirección z+1; Xn ,Dirección z+n
 Cada elemento del arreglo se puede procesar como si fuera una
variable simple.Ej:
Suma Suma + x[2]
X[2] 15
i 3
X[i] 15
X[i+2] 15
 Sobre los vectores se pueden realizar las siguientes operaciones:
Lectura/Escritura, Asignación, Actualización(ins, eli, Mod),
Ordenamiento y Búsqueda.
Arreglos unidimensionales
Están formados por un conjunto de elementos
de un mismo tipo de datos que se almacenan
bajo un mismo nombre, y se diferencian por la
posición que tiene cada elemento dentro del
arreglo de datos.
Al declarar un arreglo, se debe inicializar sus
elementos antes de utilizarlos. Para declarar
un arreglo tiene que indicar su tipo, un
nombre único y la cantidad de elementos que
va a contener
Partes de un arreglo
 Los componentes
 Los índices
Los componentes. Hacen referencia a los
elementos que forman el arreglo, es decir, a
los valores que se almacenan en cada una de
las casillas del mismo.
Los índices. Permiten hacer referencia a los
componentes del arreglo en forma individual,
especifican cuántos elementos tendrá el
arreglo y además, de qué modo podrán
accesarse esos componentes.
Operaciones con vectores
 Lectura/ escritura
 Asignación
 Actualización (inserción, eliminación, modificación)
 Recorrido (acceso secuencial)
 Ordenación
 Búsqueda
Sea arre un arreglo de 70 elementos enteros
con índices enteros. Su representación nos
queda:
Sea bool un arreglo de 26 elementos
booleanos con índices de tipo caracter. Su
representación nos queda:
Lectura
El proceso de lectura de un arreglo consiste en
leer y asignar un valor a cada uno de sus
elementos. Normalmente se realizan con
estructuras repetitivas, aunque pueden usarse
estructuras selectivas. Usamos los índices
para recorrer los elementos del arreglo:
desde i = 1 hasta 70 hacer
leer ( arre[i])
fin_desde
Escritura
Es similar al caso de lectura, sólo que en vez
de leer el componente del arreglo, lo
escribimos.
leer (N)
desde i = 1 hasta N hacer
escribir (arre[i])
fin_desde
Asignación
No es posible asignar directamente un valor a
todo el arreglo; sino que se debe asignar el
valor deseado en cada componente. Con una
estructura repetitiva se puede asignar un valor
a todos los elementos del vector.
Por ejemplo:
arre[1] =120 (asignación de un valor
constante único a una casilla del vector)
arre[3] =arre[1] / 4 (asignar una
operación)
Se puede asignar un valor constante a todos
los elementos del vector:
desde i = 1 hasta 5 hacer
arre[i] =3
fin_desde
O bien
arre =3 (con arre del tipo arreglo)
Inicialización
Para inicializar con cero todos los elementos
del arreglo:
desde i = 1 hasta 70 hacer
arre[i] ¬ 0
fin_desde
Acceso Secuencial (recorrido)
El acceso a los elementos de un vector puede
ser para leer en él o para escribir (visualizar su
contenido). Recorrido del vector es la acción
de efectuar una acción general sobre todos
los elementos de ese vector.
Actualización
Incluye añadir (insertar), borrar o modificar
algunos de los ya existentes. Se debe tener en
cuenta si el arreglo está o no ordenado. Añadir
datos a un vector consiste en agregar un
nuevo elemento al final del vector, siempre
que haya espacio en memoria.
Estructuras de Datos
Tema: Memoria Estática
Subtema: Arreglos Bidimensionales
 Estos arreglos constan de dos índices, también se llaman
matrices.
 Notación: Podría ser de diferentes maneras. Por ej:
Array [0...2, 0...2] de enteros: Matriz
Matriz: M
34 43 90
0 1 2
Componentes
Indices
83 2 41
56 75 3
0
1
2
 Operaciones: Lectura,
Escritura, Asignación.
Arreglo bidimensional
Es un conjunto de datos homogéneo, finito y
ordenado, donde se hace referencia a cada
elemento por medio de dos índices.
El primero se utiliza para los renglones (filas)
y el segundo para las columnas.
 También puede definirse como un arreglo de
arreglos. Internamente en memoria se
reservan MxN posiciones consecutivas para
almacenar todos los elementos del arreglo.
Declaración de una matriz

More Related Content

Similar to Estructuras de Datos Elementos y Arreglos.ppt

Cap06 arreglos y vectores.
Cap06 arreglos y vectores.Cap06 arreglos y vectores.
Cap06 arreglos y vectores.
Miguel Martinez
 
Angela y vicky I-B
Angela y vicky I-BAngela y vicky I-B
Angela y vicky I-B
victoriaRJ
 
Arrays - programación 3
Arrays - programación 3Arrays - programación 3
Arrays - programación 3
yeimirbeth
 
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptxOBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
juan gonzalez
 

Similar to Estructuras de Datos Elementos y Arreglos.ppt (20)

Arrays
ArraysArrays
Arrays
 
Arreglos
ArreglosArreglos
Arreglos
 
5ta Evaluación de Progamación.docx
5ta Evaluación de Progamación.docx5ta Evaluación de Progamación.docx
5ta Evaluación de Progamación.docx
 
Cap06 arreglos y vectores.
Cap06 arreglos y vectores.Cap06 arreglos y vectores.
Cap06 arreglos y vectores.
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos
 
Grupo
GrupoGrupo
Grupo
 
Ape unidad4
Ape unidad4Ape unidad4
Ape unidad4
 
ARREGLOS UNIDIMENSIONALES
ARREGLOS UNIDIMENSIONALESARREGLOS UNIDIMENSIONALES
ARREGLOS UNIDIMENSIONALES
 
Daniel lugoalgoritmica
Daniel lugoalgoritmicaDaniel lugoalgoritmica
Daniel lugoalgoritmica
 
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)
 
Angela y vicky I-B
Angela y vicky I-BAngela y vicky I-B
Angela y vicky I-B
 
Apuntes Ped
Apuntes PedApuntes Ped
Apuntes Ped
 
Arreglos
ArreglosArreglos
Arreglos
 
Arrays - programación 3
Arrays - programación 3Arrays - programación 3
Arrays - programación 3
 
Array o arreglos
Array o arreglos Array o arreglos
Array o arreglos
 
Arreglos - Assembler
Arreglos - AssemblerArreglos - Assembler
Arreglos - Assembler
 
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptxOBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
OBJETIVO 5 VECTORES que se utilizan en la programacion.pptx
 
Presentación Arreglos
Presentación ArreglosPresentación Arreglos
Presentación Arreglos
 
Vectores y matrices
Vectores y matricesVectores y matrices
Vectores y matrices
 
Vectores en power point [recuperado]
Vectores en power point [recuperado]Vectores en power point [recuperado]
Vectores en power point [recuperado]
 

More from AndersonHernandezara (6)

Sesión 9 y 10 - Modelado de procesos de Software (1).pdf
Sesión 9 y 10 - Modelado de procesos de Software (1).pdfSesión 9 y 10 - Modelado de procesos de Software (1).pdf
Sesión 9 y 10 - Modelado de procesos de Software (1).pdf
 
Sesión #1 Introduccion al curso.pptx
Sesión #1 Introduccion al curso.pptxSesión #1 Introduccion al curso.pptx
Sesión #1 Introduccion al curso.pptx
 
Clase # 2 y 3 Introducción a Servicio al cliente.pptx
Clase # 2 y 3 Introducción a Servicio al cliente.pptxClase # 2 y 3 Introducción a Servicio al cliente.pptx
Clase # 2 y 3 Introducción a Servicio al cliente.pptx
 
Sesión 2 - Ciclo de vida del Software.pptx
Sesión 2 - Ciclo de vida del Software.pptxSesión 2 - Ciclo de vida del Software.pptx
Sesión 2 - Ciclo de vida del Software.pptx
 
Introducción a Android.pdf
Introducción a Android.pdfIntroducción a Android.pdf
Introducción a Android.pdf
 
Proyecto Area Técnología e Informática 2022.docx
Proyecto Area Técnología e Informática 2022.docxProyecto Area Técnología e Informática 2022.docx
Proyecto Area Técnología e Informática 2022.docx
 

Recently uploaded

TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
varichard
 
Automatizacion Industria_Teoria y Control (1).pdf
Automatizacion Industria_Teoria y Control (1).pdfAutomatizacion Industria_Teoria y Control (1).pdf
Automatizacion Industria_Teoria y Control (1).pdf
SAULMUOZ16
 
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
Adolfo Acero Aguilar
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
FRANCISCOJUSTOSIERRA
 

Recently uploaded (20)

Diseño digital - M. Morris Mano - 3ed.pdf
Diseño digital - M. Morris Mano - 3ed.pdfDiseño digital - M. Morris Mano - 3ed.pdf
Diseño digital - M. Morris Mano - 3ed.pdf
 
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
 
METRADOS EN OBRAS DE PAVIMENTACION- ACTUALIZADA.pptx
METRADOS EN OBRAS DE PAVIMENTACION- ACTUALIZADA.pptxMETRADOS EN OBRAS DE PAVIMENTACION- ACTUALIZADA.pptx
METRADOS EN OBRAS DE PAVIMENTACION- ACTUALIZADA.pptx
 
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
 
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOSTEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
 
Automatizacion Industria_Teoria y Control (1).pdf
Automatizacion Industria_Teoria y Control (1).pdfAutomatizacion Industria_Teoria y Control (1).pdf
Automatizacion Industria_Teoria y Control (1).pdf
 
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
 
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
 
ESTRATEGIA comercial de productos en mineria.pptx
ESTRATEGIA comercial de productos en mineria.pptxESTRATEGIA comercial de productos en mineria.pptx
ESTRATEGIA comercial de productos en mineria.pptx
 
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
2021-MAYO-CAP-RL_SEGURIDAD-PARA-DELEGADOS_08.05.21-ENVIADO.pdf
 
Trabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoTrabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayo
 
Diagramas de Tiempo.pptpara electronica aplicada
Diagramas de Tiempo.pptpara electronica aplicadaDiagramas de Tiempo.pptpara electronica aplicada
Diagramas de Tiempo.pptpara electronica aplicada
 
UNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptxUNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptx
 
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptxREGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
 
Embriologia-2 en ganado bovino lechero .ppt
Embriologia-2 en ganado bovino lechero .pptEmbriologia-2 en ganado bovino lechero .ppt
Embriologia-2 en ganado bovino lechero .ppt
 
Ciclo de Refrigeracion aplicado a ToniCorp.pptx
Ciclo de Refrigeracion aplicado a ToniCorp.pptxCiclo de Refrigeracion aplicado a ToniCorp.pptx
Ciclo de Refrigeracion aplicado a ToniCorp.pptx
 
DIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptDIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.ppt
 
Escenario económico - Desarrollo sustentable
Escenario económico - Desarrollo sustentableEscenario económico - Desarrollo sustentable
Escenario económico - Desarrollo sustentable
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 20.5 PREFERIDO.wbk.wbk SEG...
 
TERRENO DE FUNDACION - CURSO DE PAVIMENTOS
TERRENO DE FUNDACION - CURSO DE PAVIMENTOSTERRENO DE FUNDACION - CURSO DE PAVIMENTOS
TERRENO DE FUNDACION - CURSO DE PAVIMENTOS
 

Estructuras de Datos Elementos y Arreglos.ppt

  • 2. Estructuras de Datos: Conceptos  Conjunto de datos de tipos iguales o diferentes que se relacionan entre si y que se pueden operar como un todo. Entero, Real, Carácter, Lógico Datos Simples Hacen referencia a un único valor a la vez en memoria Datos Estructurados Se refieren a un grupo de casillas de memoria Estáticos Dinámicos Arreglos, Registros, Archivos, Cadenas Listas, Arboles, Grafos
  • 3. ¿Qué es una Estructura de Datos?  Una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulación. Un dato elemental es la mínima información que se tiene en un programa.(ejemplos de datos elementales serían int, float, char,etc…)  Lo que se pretende con las estructuras de datos es facilitar un esquema lógico para manipular los datos en función del problema que haya que tratar y el algoritmo para resolverlo.
  • 4. ¿Qué es una Estructura de Datos?  En algunos casos la dificultad para resolver un problema radica en escoger la estructura de datos adecuada. Y, en general, la elección del algoritmo y de las estructuras de datos que manipulará estarán muy relacionadas.
  • 5. Estructuras de Datos: Implementación  Para implementar alguna estructura de datos, primero es necesario tener muy claro cómo va a ser el manejo de memoria.  La diferencia entre estructuras estáticas y dinámicas es el manejo de memoria. Estática Durante la ejecución del programa el tamaño de la estructura no cambia Dinámica Durante la ejecución del programa el tamaño de la estructura puede cambiar
  • 6. Estructuras de Datos Tema: Memoria Estática Subtema: Conceptos de Arreglos  Definición: Colección finita, homogenea y ordenada de elementos. Finita: Porque todo arreglo tiene un límite. Homogenea: Porque todos los elementos son del mismo tipo. Ordenada: Porque se puede determinar cuál es el enésimo elemento.  Un arreglo tiene dos partes: Componentes e índices C1 C2 .... Cn i0 i1 in Componentes Índices  Componentes: Hacen referencia a los elementos que forman el arreglo.  Índices: Permiten referirse a los componentes del arreglo en forma individual.
  • 7. ¿Arreglos o arrays? 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.
  • 8. Arreglos 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.
  • 9. 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 elmento.
  • 10. Los arreglos se clasifican de acuerdo con el número de dimensiones que tienen. Así se tienen los: Unidimensionales (vectores) Bidimensionales (tablas o matrices) Multidimensionales (tres o más dimensiones)
  • 12.
  • 13. Si no existieran los arreglos Suponga que se desea desarrollar un programa para: 1. Leer una lista de calificaciones de un examen 2. Encontrar su media 3. Escribir una lista de las calificaciones mayores que la media 4. Ordenar la lista de las calificaciones en orden ascendente.
  • 14. Supongamos también que hay 100 calificaciones. Debemos utilizar 100 variables diferentes nota1, nota2, ...., nota100, de ese modo son 100 direcciones diferentes de memoria para almacenar las calificaciones del examen. Se imagina declarar las 100 variables. ¿cuántas instrucciones involucra?
  • 15. Para calcular la media: Media ¬(nota1+nota2+.......+nota100)/100 Para la lista de calificaciones mayores que la media, deberá también irse comparando una por una: Si nota1 > media entonces escribir (nota1) Fin_si Si nota2 > media entonces escribir (nota2) Fin_si Si nota100 > media entonces escribir (nota100) Fin_si
  • 16. Estructuras de Datos Tema: Memoria Estática Subtema: Arreglos Unidimensionales  Son los arreglos más simples y constan de un solo índice, tambien se llaman vectores.  Notación: Podría ser de diferentes maneras. Por ej: Array [0...9] de enteros: Vector Vector: x 14 43 .... 4 x0 x1 x9 Componentes Índices  X hace referencia a todo el vector, mientras que x0, o x1 hace referencia los elementos en forma individual
  • 17. Estructuras de Datos Tema: Memoria Estática Subtema: Arreglos Unidimensionales  Los arreglos se almacenan en forma adyacente, así que su representación en memoria es: X0 ,Dirección z; X1 ,Dirección z+1; Xn ,Dirección z+n  Cada elemento del arreglo se puede procesar como si fuera una variable simple.Ej: Suma Suma + x[2] X[2] 15 i 3 X[i] 15 X[i+2] 15  Sobre los vectores se pueden realizar las siguientes operaciones: Lectura/Escritura, Asignación, Actualización(ins, eli, Mod), Ordenamiento y Búsqueda.
  • 18. Arreglos unidimensionales Están formados por un conjunto de elementos de un mismo tipo de datos que se almacenan bajo un mismo nombre, y se diferencian por la posición que tiene cada elemento dentro del arreglo de datos.
  • 19. Al declarar un arreglo, se debe inicializar sus elementos antes de utilizarlos. Para declarar un arreglo tiene que indicar su tipo, un nombre único y la cantidad de elementos que va a contener
  • 20.
  • 21. Partes de un arreglo  Los componentes  Los índices
  • 22. Los componentes. Hacen referencia a los elementos que forman el arreglo, es decir, a los valores que se almacenan en cada una de las casillas del mismo.
  • 23. Los índices. Permiten hacer referencia a los componentes del arreglo en forma individual, especifican cuántos elementos tendrá el arreglo y además, de qué modo podrán accesarse esos componentes.
  • 24.
  • 25. Operaciones con vectores  Lectura/ escritura  Asignación  Actualización (inserción, eliminación, modificación)  Recorrido (acceso secuencial)  Ordenación  Búsqueda
  • 26. Sea arre un arreglo de 70 elementos enteros con índices enteros. Su representación nos queda:
  • 27. Sea bool un arreglo de 26 elementos booleanos con índices de tipo caracter. Su representación nos queda:
  • 28. Lectura El proceso de lectura de un arreglo consiste en leer y asignar un valor a cada uno de sus elementos. Normalmente se realizan con estructuras repetitivas, aunque pueden usarse estructuras selectivas. Usamos los índices para recorrer los elementos del arreglo: desde i = 1 hasta 70 hacer leer ( arre[i]) fin_desde
  • 29. Escritura Es similar al caso de lectura, sólo que en vez de leer el componente del arreglo, lo escribimos. leer (N) desde i = 1 hasta N hacer escribir (arre[i]) fin_desde
  • 30. Asignación No es posible asignar directamente un valor a todo el arreglo; sino que se debe asignar el valor deseado en cada componente. Con una estructura repetitiva se puede asignar un valor a todos los elementos del vector. Por ejemplo: arre[1] =120 (asignación de un valor constante único a una casilla del vector) arre[3] =arre[1] / 4 (asignar una operación)
  • 31. Se puede asignar un valor constante a todos los elementos del vector: desde i = 1 hasta 5 hacer arre[i] =3 fin_desde O bien arre =3 (con arre del tipo arreglo)
  • 32. Inicialización Para inicializar con cero todos los elementos del arreglo: desde i = 1 hasta 70 hacer arre[i] ¬ 0 fin_desde
  • 33. Acceso Secuencial (recorrido) El acceso a los elementos de un vector puede ser para leer en él o para escribir (visualizar su contenido). Recorrido del vector es la acción de efectuar una acción general sobre todos los elementos de ese vector.
  • 34. Actualización Incluye añadir (insertar), borrar o modificar algunos de los ya existentes. Se debe tener en cuenta si el arreglo está o no ordenado. Añadir datos a un vector consiste en agregar un nuevo elemento al final del vector, siempre que haya espacio en memoria.
  • 35. Estructuras de Datos Tema: Memoria Estática Subtema: Arreglos Bidimensionales  Estos arreglos constan de dos índices, también se llaman matrices.  Notación: Podría ser de diferentes maneras. Por ej: Array [0...2, 0...2] de enteros: Matriz Matriz: M 34 43 90 0 1 2 Componentes Indices 83 2 41 56 75 3 0 1 2  Operaciones: Lectura, Escritura, Asignación.
  • 36. Arreglo bidimensional Es un conjunto de datos homogéneo, finito y ordenado, donde se hace referencia a cada elemento por medio de dos índices. El primero se utiliza para los renglones (filas) y el segundo para las columnas.
  • 37.  También puede definirse como un arreglo de arreglos. Internamente en memoria se reservan MxN posiciones consecutivas para almacenar todos los elementos del arreglo.