El documento describe conceptos básicos sobre datos y estructuras de datos. Explica que un dato es la información mínima sobre la cual opera un algoritmo y que una estructura de datos organiza los datos para facilitar su manipulación. Describe diferentes tipos de estructuras de datos como arreglos, listas y tablas, y métodos comunes como agregar, obtener y eliminar elementos.
1. Conceptos Básicos
¿Qué es un Dato?
Un dato es la expresión general que describe las
características de las entidades sobre las cuales
opera un algoritmo.
En Estructura de datos, es la parte mínima de la
información.
2. Conceptos Básicos
Un dato por sí mismo no constituye información, es
el procesamiento de los datos lo que nos proporciona
información.
3. Conceptos Básicos
Tipos de Datos:
Son los que determinan el conjunto de valores al que
pertenece una constante, o que puede tomar una
variable o expresión, o que pueden ser generados
por un operador o función.
También determina el conjunto de operaciones que
se puede aplicar al conjunto de valores
4. Conceptos Básicos
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 sistema.
5. Conceptos Básicos
Una estructura de datos define la organización
e interrelación de éstos y un conjunto de operaciones
que se pueden realizar sobre ellos.
Las operaciones básicas son:
• Adicionar un nuevo valor
•Borrar un valor
•Búsqueda
•Ordenamiento
6. Cada estructura ofrece ventajas y desventajas en relación a la
simplicidad y eficiencia para la realización de cada operación. De esta
forma, la elección de la estructura de datos apropiada para cada
problema depende de factores como la frecuencia y el orden en que
se realiza cada operación sobre los datos.
Conceptos Básicos
7. Tipos de Datos Estructurados
Se definen nuevos tipos en función de otros definidos previamente.
Los valores de los tipos de estructurados son usualmente
agrupaciones de valores componentes de los tipos constituyentes
definidos previamente.
8. Estructuras de Datos lineales y No Lineales
Estructuras de Datos Lineales
Estáticas
Arreglos
Registros
Archivos
Dinámicas
listas
pilas
colas.
9. Estructuras de Datos lineales y No Lineales
Estructuras de Datos No Lineales
Árboles
Grafos
Son estructuras de datos dinámicas que se caracteriza por no existir una
relación de sus elementos es decir que un elemento puede estar con
cero uno o mas elementos.
11. Arreglos
Es un conjunto de datos o una
estructura de datos homogéneos
que se encuentran ubicados en
forma consecutiva en la memoria
RAM (sirve para almacenar datos en
forma temporal).
12. Arreglos
Los arreglos pueden ser
Unidimensionales: está formado de una
colección finita y ordenada de datos del
mismo tipo.
Bidimensionales (tablas o matrices)
Multidimensionales: tres o más
dimensiones
13. Arreglos
Arreglo Unidimensional:
Todos los datos comparten el mismo nombre. Pueden ser caracteres,
enteros, números en coma flotante, etc. Ejemplo: x es un arreglo de 6
elementos
12 15 40 52 10 1
x[0] x[1] x[2] x[3] x[4] x[5]
14. Arreglos en java
Los arreglos en Java son dinámicos, pero no extensibles, lo cual significa
que deben ser creados con el tamaño que tendrán hasta el final de su
vida.
Los arreglos se crean con el operador new seguido del tipo y número de
elementos.
tipo nombre_array[]=new tipo[nº];
Ejemplo:
double [] x = new double[100];
15. Arreglos en java
Los arreglos en Java empiezan del subíndice cero.
Los elementos de un arreglo se inicializan al valor por defecto del
tipo correspondiente (cero para valores numéricos, el carácter nulo
para char, false para boolean, null para Strings y para referencias).
Se puede acceder al número de elementos de un arreglo con la variable
miembro implícita length.
16. Inicialización de arreglos
Los arreglos se pueden inicializar con valores entre llaves {...}
separados por comas.
También los arreglos de objetos se pueden inicializar con varias
llamadas a new dentro de unas llaves {...}.
17. int v[] = new int[10];
Creación de arreglos con valores iniciales
int v[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
String dias[] = {"lunes", "martes", "miercoles", "jueves", "viernes",
"sabado", "domingo"};
18. Ejercicios:
Crear un programa que permita el ingreso de 10 números y
mostrarlos en pantalla.
Crear un programa que permita el ingreso de 10 palabras y los
muestre en pantalla.
Crear un programa que lea 10 palabras en minúscula y la muestre en
mayúsculas.
19. Arreglos Bidimensionales: matrices
Tipo de dato nombre[fila][columna];
int [][] valores= new int[3][4];
Creación de arreglo bidimensional con valores iniciales
int [][] num = {{1, 2, 3},
{4, 5, 6},
};
21. Ejercicio:
Crear una aplicación que permita ingresar
números en una matriz de 3 x 3 , y entregar
la suma de números de cada fila.
Se tienen las notas de 5 exámenes de 10
alumnos, y se desea promediar la nota final
de cada uno de ellos. Diseñe una aplicación
que solucione este problema.
23. Listas: Definición
Secuencia de elementos
L: a1 a2 a3 …. an
Está implícito que hay un cierto orden.
Longitud de la lista long(L) : número de elementos
que tiene la lista que en este caso es n
24. ArrayList
Los ArrayList se usan para
almacenar objetos en un arreglo
unidimensional o lista. Su tamaño
puede crecer o disminuir de
acuerdo a las necesidades de la
aplicación.
25. ArrayList
Creación
Para crear un lista se usa la siguiente sintaxis:
ArrayList nombre_lista=new ArrayList();
ArrayList <tipo> nombre_lista=new ArrayList <tipo>();
ArrayList: clase predefina para construir listas volcadas en
arrays.
nombre: indica el nombre de la lista. ArrayList(): constructor
de la clase ArrayList.
tipo: tipo de los elementos de la lista.
26. ArrayList
Métodos
A diferencia de un arreglo la clase ArrayList proporciona
métodos para el manejo de la lista. Algunos de los métodos
más comunes son:
add
get
set
remove
contains
size
27. ArrayList
Métodos
A diferencia de un arreglo la clase ArrayList proporciona
métodos para el manejo de la lista. Algunos de los métodos
más comunes son:
add
get
set
remove
contains
size
28. ArrayList: Método add
método add(elemento). inserta un elemento al final de la
lista.
Ejemplo:
ArrayList mascota=new ArrayList();
mascota.add(“boby”);
mascota.add(“max”);
mascota.add(“terry”);
29. ArrayList: Método add
add(posición, elemento). Inserta un elemento en
una posición determinada de la lista.
Ejemplo:
mascota.add(3, “balto”);
En la posición 3 de mascota se almacena “balto”, El
valor del indice debe ser el siguiente valor
consecutivo respecto al tamaño de la lista, de lo
contrario se produce una excepción.
31. ArrayList: Método set
set(posición, elemento): modifica un elemento
determinado de la lista.
Ejemplo:
Mascota.set(1, “maxi”) se cambia max por maxi
32. ArrayList: Método remove
remove(posición):elimina un elemento de la lista
Ejemplo:
mascota.remove(0) elimina boby
Si queremos eliminar todos los elementos de la lista
utilizamos clear().
Ejemplo: mascota.clear();
33. ArrayList: Método constains
constains(elemento): devuelve true si la lista
contiene el elemento especificado.
Los métodos indexOf y lasIndexOf devuelven el
índice en la lista del primero y del último elemento
especificado, respectivamente, o -1 si dicho
elemento no se localiza.
35. ArrayList: Método size
size(): retorna el tamaño de la lista.
Ejemplo:
ArrayList colores=new ArrayList();
colores.add(“verde”);
colores.add(“naranjo”);
colores.add(“cafe”);
colores.size() retorna el valor 3