Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I

Slides:



Advertisements
Presentaciones similares
2.1.1 Definición. Un arreglo puede definirse como un grupo o una colección finita, homogénea y ordenada de elementos. Los arreglos pueden ser de los siguientes.
Advertisements

Abstracción de Datos Arrays.
Estructuras de Datos (ARRAYS)
Programación I Teoría III
Representación De La Información. Solo para principiantes.
Tipos de Datos Básicos y Estructurados
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
implementar (a veces es imposible) si se utilizan datos simples.
MANEJO DE ARRAYS EN C.
INFORMATICA I Arreglos 1 CLASE 17.
Tema 1. Introducción a la programación (Lenguaje java).
ARREGLOS y MATRICES UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO
PROGRAMACION DE ESTRUCTURAS DE DATOS
III. DISEÑO DE ALGORITMOS PARA LA SOLUCIÓN DE PROBLEMAS.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Arreglos Ing. Nahiby Castillo.
VECTORES.
ARREGLOS Estructuras de datos.
Estructuras de datos M.I.A Daniel Alejandro García López.
Unidad 3 Punteros.
Vectores en java.
Arreglos Prof. CÉSAR MOLINA.
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
Unidad 1 Definiciones Básicas
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
3.1 Declaración de tablas en C
UNIDAD V Arreglos y Cadenas
TIPOS Y ESTRUCTURAS BÁSICAS DE DATOS
ESTRUCTURAS DE DATOS I Conocer, comprender y analizar algunos de los principales tipos de estructuras de datos.
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 4 - Arrays Índice del Capítulo 4.1Introducción 4.2Arrays 4.3Declaración de Arrays 4.4Ejemplos.
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
ESTRUCTURA DE DATOS EN JAVA
Estructuras de Datos Arreglos.
Clase 10: Estructuras de datos y arreglos.
Estructura de Datos II Equipo 4 Equipo 7 Acosta Montiel Miguel A.
Programación IMC José Andrés Vázquez Flores. Definición Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
Administración de Memoria
Aplicación de estructuras de datos
Programación I Arreglos II- Matrices.
75.40 Algoritmos y Programación I
Unidad 4. Arreglos y Cadenas. Definición de Arreglo:  Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
Fundamentos de Programación
Informática Ingeniería en Electrónica y Automática Industrial
Programación en C para electrónicos
Matrices Departamento de Computación Escuela de Ingeniería de Sistemas
Vectores y Matrices.
Tipos de Datos abstractos
Matrices Prof. Flor Narciso Departamento de Computación
Algoritmos y Estructura de Datos Tema: Vectores 2
Vectores y Matrices.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Estructura de datos I CIS - UABJB.
Visual Basic FUNCIONES Y PROCEDIMIENTOS
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Arreglos: Vectores Departamento de Computación
Arreglos Vectores y Matrices.
Arrays multidimensionales en JAVA
Arreglos unidimensionales
Al finalizar el curso el alumno será capaz de: Diseñar algoritmos utilizando estructuras estáticas de datos y programación modular.
Computación I. CI-2125 Tema VII
Arreglos: Vectores Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
Tipos de Datos abstractos
PROGRAMACION DE APLICACIONES EN MEMORIA DEL COMPUTADOR = ALGORITMOS Y ESTRUCTURAS DE DATOS.
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
“Estructuras de datos”
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA COORDINACIÓN DE MATERIAS PROPEDÉUTICAS INGENIERÍA EN SISTEMAS ENERGÉTICOS SUSTENTABLES.
Transcripción de la presentación:

Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I Ing. Víctor Andrés Ochoa Correa

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. Datos Simples Hacen referencia a un único valor a la vez en memoria Entero, Real, Carácter, Lógico Arreglos, Registros, Archivos, Cadenas Estáticos Datos Estructurados Se refieren a un grupo de casillas de memoria Dinámicos 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 Componentes i0 i1 in Í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: Leer una lista de calificaciones de un examen Encontrar su media Escribir una lista de las calificaciones mayores que la media Ordenar la lista de las calificaciones en orden ascendente.

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 Componentes x0 x1 x9 Í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 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 1 2 Indices 34 43 90 Operaciones: Lectura, Escritura, Asignación. 83 2 41 1 56 75 3 2 Componentes

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