Cómo llegar a la lógica para construir un método de impresión inversa que imprima los nodos en una lista vinculada usando un enfoque recursivo usando Java

Solo necesita invertir una línea en su programa.

impresión vacía pública (cabeza de nodo)
{
if (cabeza == nulo)
{
regreso;
}
más
{
// Llame a su función en head.next luego imprima el valor en // el nodo actual.
print (head.getNext ());
// elemento es básicamente el dato
System.out.println (head.getElement ());
}
}

La lógica es muy simple, el programa continuará llamándose a sí mismo con el argumento como el siguiente encabezado cada vez, pero solo se imprimirá una vez que todas las llamadas a funciones anteriores hayan regresado. Y el primer retorno ocurrirá cuando head sea tail.next, es decir, nulo. Luego, la ejecución del programa volverá a la llamada anterior cuando el argumento de la función era cola. e imprimirá el valor de la cola. Después de ese programa volverá a la ejecución de la llamada a la función que tiene un argumento como el nodo anterior de la cola, e imprimirá su valor. Y así. Por lo tanto, la lista vinculada se imprimirá al revés.