篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java Lista Doblemente Enlazada con JAVA相关的知识,希望对你有一定的参考价值。
import java.util.concurrent.ThreadLocalRandom;
class Helper {
static int[] lista_generica_valores ( int largo_cadena ) {
int [] arreglo_base = new int[largo_cadena];
for ( int n =0; n<largo_cadena;n++ ) {
arreglo_base[n] = ThreadLocalRandom.current().nextInt(0, 100000 + 1);
}
return arreglo_base;
}
}
class ListaEnlazadaDoble {
private NodoDoble ini;
private NodoDoble fin;
public ListaEnlazadaDoble (int[] lista) {
System.out.println("Lista doblemente enlazada");
System.out.println("=========================");
this.ini = null;
this.fin = null;
for (int n : lista ) {
NodoDoble nuevoNodo = new NodoDoble( n );
if (this.ini == null ) {
this.ini = nuevoNodo;
this.fin = nuevoNodo;
} else {
nuevoNodo.setAnterior(this.fin);
this.fin.setSiguiente( nuevoNodo );
this.fin = nuevoNodo;
}
}
}
public void retornaLista () {
System.out.println("Recorre lista adelante");
NodoDoble stepNodo = this.ini;
while ( stepNodo != null ) {
System.out.println(stepNodo.getValor() );
stepNodo = stepNodo.getSiguiente();
}
}
public void retornaListaReversa () {
System.out.println("Recorre lista reversa");
NodoDoble stepNodo = this.fin;
while ( stepNodo != null ) {
System.out.println(stepNodo.getValor() );
stepNodo = stepNodo.getAnterior();
}
}
}
class NodoDoble {
private int valor;
private NodoDoble siguiente;
private NodoDoble anterior;
public NodoDoble ( int valor ) {
this.valor = valor;
}
public int getValor () {
return this.valor;
}
public void setSiguiente ( NodoDoble next ) {
this.siguiente = next;
}
public void setAnterior (NodoDoble prev) {
this.anterior = prev;
}
public NodoDoble getSiguiente () {
return this.siguiente;
}
public NodoDoble getAnterior () {
return this.anterior;
}
}
class Main {
public static void main(String[] args) {
// Arreglo generico
int[] arreglo_base = Helper.lista_generica_valores(10);
// Ejecución lista doblemente enlazada
ListaEnlazadaDoble led = new ListaEnlazadaDoble(arreglo_base);
led.retornaLista();
led.retornaListaReversa();
}
}
以上是关于java Lista Doblemente Enlazada con JAVA的主要内容,如果未能解决你的问题,请参考以下文章