Está en la página 1de 11

Contenido

1.INTRODUCCION 2

2.LISTAS 3

3.QUE ES LA LISTA 3

4.LA DIFERENCIA: 3

5.CARACTERÍSTICAS USO DE LIST. 4

5.1. INTERFAZ LIST LA INTERFAZ DE LA LISTA DE JAVA 4

5.3.USO LISTA 5

6.TIPOS DE LISTAS LINEALES: 9

7.CONCLUSIONES 10

8.BIBLIOGRAFÍA 11
1.INTRODUCCION

El tema de listas sobre estructura de datos en las cuales podemos definirlas de una manera

simple como las listas son una sucesión de cero o más elementos.

Esta es una definición muy simple y que no aclara demasiado en términos informáticos, así

que profundizaremos un poco más. Hay varios tipos de listas, las hay enlazadas, no

enlazadas, ordenadas y no ordenadas. Nosotros vamos a estudiar las listas enlazadas, tanto

ordenadas como no ordenadas. La diferencia que existe entre las listas enlazadas y las no

enlazadas es que las enlazadas utilizan punteros, es decir, asignación dinámica de memoria,

lo que optimiza la gestión de la misma. Una lista no enlazada es un simple array, y por lo tanto

es un bloque contiguo de memoria, mientras que una lista enlazada es un conjunto de nodos

que no tienen por qué ocupar posiciones contiguas de memoria.

La diferencia entre listas ordenadas y no ordenadas es obvia, las ordenadas mantienen cierto

orden entre sus elementos. A partir de ahora nos centraremos en las listas enlazadas no

ordenadas. Una lista es una sucesión de nodos en la que a partir de un nodo se puede acceder

al que ocupa la siguiente posición en la lista. Esta característica nos indica que el acceso a

las listas es secuencial y no indexado, por lo que para acceder al último elemento de la lista

hay que recorrer los n-1 elementos previos ( n es el tamaño de la lista).


2.LISTAS

Las listas no son arreglos (arrays), aunque ambos representan secuencias de elementos de un
tipo, los arreglos tienen longitud fija; las listas, no; es decir, las listas son flexibles y permiten
cambio de implementación.
- En una lista enlazada, cada elemento apunta al siguiente excepto el último que no tiene
sucesor y el valor del enlace es null. Por ello los elementos son registros que contienen
el dato a almacenar y un enlace al siguiente elemento. Los elementos de una lista, suelen
recibir también el nombre de Nodos de la lista
Las estructuras de datos que hacen uso de listas en Java y se abordaran en esta guía son:
- List
- ArrayList
- LinkedList
3.QUE ES LA LISTA

Son clases e interfaces que se especializan en el uso e implementación de Listas a partir de


estructuras existentes y definidas por Java con todos los métodos definidos e implementados.

Hay varios tipos de listas, las hay enlazadas, no enlazadas, ordenadas y no ordenadas. Nosotros
vamos a estudiar las listas enlazadas, tanto ordenadas como no ordenadas.

4.LA DIFERENCIA:

que existe entre las listas enlazadas y las no enlazadas es que las enlazadas utilizan punteros,
es decir, asignación dinámica de memoria, lo que optimiza la gestión de la misma.

Una lista no enlazada es un simple array, y por lo tanto es un bloque contiguo de memoria,
mientras que una lista enlazada es un conjunto de nodos que no tienen por qué ocupar posiciones
contiguas de memoria.

La diferencia entre listas ordenadas y no ordenadas es obvia, las ordenadas mantienen cierto
orden entre sus elementos.
A partir de ahora nos centraremos en las listas enlazadas no ordenadas.

Una lista es una sucesión de nodos en la que a partir de un nodo se puede acceder al que
ocupa la siguiente posición en la lista. Esta característica nos indica que el acceso a las listas
es secuencial y no indexado, por lo que para acceder al último elemento de la lista hay que
recorrer los n-1 elementos previos ( n es el tamaño de la lista).

Para que un nodo pueda acceder al siguiente y la lista no se rompa en varias listas cada nodo
tiene que tener un puntero que guarde la dirección de memoria que ocupa el siguiente
elemento. De esta forma un nodo se podría representar esquemáticamente así:

5.CARACTERÍSTICAS USO DE LIST.

- Puede tener un tamaño establecido, aunque su dimensión es dinámica.


- Se recomienda definir un tipo de dato para la List.
- La importación de las clases e interfaces es obligatoria.
- Hay listas que pueden almacenar cualquier tipo de dato en su estructura. Simplemente nose le
asigna tipo alguno.
- Los índices empiezan en 0 al igual que en los vectores y matrices.

5.1. INTERFAZ LIST LA INTERFAZ DE LA LISTA DE JAVA

java. útil. List representa una secuencia ordenada de objetos. Los elementos contenidos en un
Java List se pueden insertar, acceder, iterar y eliminar de acuerdo con el orden en que aparecen
internamente en el Java List. El orden de los elementos es la razón por la que esta estructura de
datos se denomina Lista. (jenkov, 2018).

5.1.2. DECLARACIÓN DE UNA LIST


Para el uso de clases e interfaces de este tipo es necesario hacer la respectiva importación de
los paquetes de Java que se desean trabajar, List opera con dos en este caso: List – ArrayList .

Este tipo de lista puede almacenar cualquier tipo de dato, pero este enfoque ya ha quedado
obsoleto. Se prefiere que se designe el tipo de dato que se va a almacenar. Entonces para
declarar una lista donde guardaremos datos tipo String, hacemos lo siguiente:

List<String> ejemploLista = new ArrayList<String>();

Con nuestra lista creada podemos empezar a introducir datos en ella.

5.3.USO LISTA

Supongamos que queremos agregar los siguientes nombres: Juan, Pedro, José, María, Sofía.

En este caso se declara una List de tipo String, dentro de <> se puede declarar el tipo de dato
que se desee. Por ejemplo:
List de enteros.

- List de Doubles
.
- List de Objetos.

- List de un tipo de clase.

-List de cualquier tipo.

- List con tamaño establecido.

Es posible además agregar el índice en el que queremos agregar dicho elemento. Podemos
obtener la cantidad de elementos que posee la lista:

- ejemploLista.size();

Para consultar la lista se utilizar:


- ejemploLista.get (0);
Donde 0 es el índice en el que se encuentra la información que queremos. En este caso, el índice
0 vendría siendo Pedro.
- Si queremos eliminar determinado elemento:

- ejemploLista.remove(0);

Donde nuevamente el 0 representa el índice que queremos eliminar. Otra forma de eliminar un
registro es por su nombre:

- ejemploLista.remove("Juan");

imprimir todos los elementos de la lista de forma individual con la ayuda de un ciclo for.

for (int i = 0; i <= ejemploLista.size() - 1; i++) {

System.out.println(ejemploLista.get(i));
}

usar un iterador para recorrer la lista e imprimir todos sus valores:

- Iterator = ejemploLista.iterator();
while(i.hasNext())
{
System.out.println(i.next());
}
Para eliminar todos los elementos de la lista usamos:

- ejemploLista.clear();

Si deseamos saber si nuestra lista contiene algún elemento utilizamos:


- ejemploLista.isEmpty();

Esto nos devolverá un true o un false. En caso de que contenga algún elemento podemos
verificar si entre esos elementos tenemos alguno en específico. Por ejemplo, si queremos saber
si en nuestra lista está escrito el nombre de José, utilizamos:

- ejemploLista.contains("José");

Nos devolverá un true o un false. Y si por alguna razón queremos modificar algún dato de
nuestra lista, por ejemplo el índice 1 que contiene el nombre de Pedro, utilizamos el siguiente
método:

- ejemploLista.set(1, "Félix");

Si queremos extraer una lista que contenga los nombres entre un índice y otro podemos utilizar:

- ejemploLista.subList(0, 2)

Si queremos extraer una lista que contenga los nombres entre un índice y otro podemos utilizar:

- ejemploLista.subList(0, 2)

ejemplo:

El resultado de esto es:


6.TIPOS DE LISTAS LINEALES:

- Listas contiguas: los elementos son adyacentes en la memoria del ordenador y tienen
unos límites (izquierdo y derecho o inferior y superior) que no pueden ser rebasados
cuando se añade un nuevo elemento. Se implementan a través de
- arrays y
- la inserción o eliminación de un elemento necesitará una traslación por parte de los
elementos de la lista,
- excepto para la cabecera y el final de la lista.

- Listas enlazadas: los elementos se almacenan en posiciones de memoria que no son


adyacentes o contiguas, por lo que cada elemento necesita almacenar la posición del
siguiente elemento de la lista. Son bastante más flexibles y potentes que las listas
contiguas y la inserción o el borrado de un elemento no requiere el desplazamiento de los
demás elementos de la lista. Se implementan, normalmente, de forma dinámica, pero si
el lenguaje de programación no lo permite se utilizarán arrays, con lo cual tendremos
limitaciones en cuanto al número de elementos que pueda contener la lista y además
establece una ocupación de memoria constante. (Garcia-inginiero, 2015)
- Listas doblemente enlazadas: Se pueden recorrer tanto del final al principio como de
principio a fin. Cada nodo de las listas de este tipo consta de un campo con información
y de otros dos campos que son de tipo puntero y que podríamos denominar anterior y
siguiente, uno desde su nodo anterior y otro de su nodo sucesor.
7.CONCLUSIONES

- La lista en la estructura de datos facilita la representación eficiente de los datos en la


memoria de la computadora cuando la cantidad de elementos no es previsible por cuanto
el uso de variables de tipo puntero permite crear y destruir variables referenciadas
dinámicamente.

- Las listas simplemente enlazadas, son posiblemente las estructuras de datos más fáciles,
rápidas y sencillas de estudiar, aprender y entender.

- La resolución de una función relacionada con listas simplemente enlazadas, es fácil y


rápida, en especial porque no se requieren demasiadas líneas de código, por ende, la
solución es inmediata.
8.BIBLIOGRAFÍA

Garcia-inginiero, A. (14 de 01 de 2015). Obtenido de Java: http://panamahitek.com/el-uso-de-

listas-en-java/

Palacios-Docente, D. (2018). POLITECNICO DE COLOMBIA. Obtenido de

file:///C:/Users/mayhi%20vl/Downloads/Guia%20Didactica%20Java%20-%204.pdf