¿Qué estructura de datos debo usar en Java para almacenar y obtener el siguiente tipo de datos? ¿Cuál debería ser la estructura de mi clase para este propósito?

Desea elegir la estructura de datos mínima que le permita almacenar y acceder a los datos como lo necesite. Desea almacenar los valores, uno por uno, en el orden en que los lee, y luego imprimirlos en el mismo orden … esa es una cola de primero en entrar, primero en salir. Puede implementar esto con una lista vinculada:

LinkedList (Java Platform SE 8)

La forma más intuitiva de almacenar estas 2 o 3 “tuplas” de valores es en una gran lista vinculada. Agregue una tupla al encabezado de una lista vinculada, una a la vez, luego sáquelas de la cola, una por una, imprimiéndolas a medida que avanza.

(?,?,?) <- (5,8,10) <- (1,2,3)

Y esto probablemente es obvio, pero en las tuplas, el primer número es a, el segundo número es b.

Para el valor almacenado por cada nodo de la lista vinculada, recomendaría crear una clase “ThreeTuple”, que puede almacenar los tres. Si, al leer el primero, el tercer valor es nulo, entonces, para fines de eficiencia, suponga que el resto también tiene solo dos valores.