Java SE 044 usa LinkedList para implementar Stack y Queue

(1) Mientras una persona no se rinda a sí misma, el mundo entero no se dará por vencido contigo.
(2) Nací para ser de gran utilidad . (3) Si no
puedo soportar el sufrimiento del aprendizaje, debo soportar el sufrimiento de la vida. Qué doloroso es Comprensión profunda.
(4) Debes ganar al hacer cosas difíciles . (
5) El espíritu es la verdadera espada.
(6) Conquistar oponentes dos veces, la primera vez en el corazón.
(7) Escribir no es realmente fácil. Si te gusta o tienes algo para ti Ayuda a recordar que te gusta + seguir o marcar como favorito ~

Java SE 044 usa LinkedList para implementar Stack y Queue

1.LinkedList 与 ArrayList

(1) La capa inferior del método de adición de LinkedList es almacenar un tipo de entrada de datos, que incluye una referencia de dirección predecesora, una referencia de dirección posterior y una referencia de dirección del objeto de datos.

(2) Para una lista vinculada, debe tener una referencia hacia adelante, una referencia hacia atrás y los datos en sí. Si solo coloca los datos en la lista vinculada, la referencia desaparecerá y no se podrá encontrar la siguiente. Elemento y elemento anterior. Por lo tanto, cuando se implementa LinkedList, genera un nuevo objeto Entry en él. La clase Entry en sí contiene tres partes. La primera es una referencia hacia adelante, la segunda es una referencia hacia atrás y la tercera Uno son los datos y los datos son los datos agregados a la lista vinculada. Utiliza esto como una variable miembro de la clase Entry, luego construye un objeto Entry y coloca el objeto Entry recién generado en LinkedList. Por lo tanto, cuando ejecutamos linkedlist.add ("aaa"), en lugar de poner la referencia de la cadena en la lista vinculada de LinkedList, colocamos un objeto Entry construido a partir de la cadena en la lista vinculada de LinkedList.

(3) Y ArrayList es poner los datos directamente en la matriz.

(4) Resumen:
cuando se agrega un objeto a ArrayList, en realidad se coloca en la matriz que se mantiene en la parte inferior de ArrayList. Cuando se agrega un objeto a LinkedList, se genera un objeto Entry dentro de LinkedList. El objeto Entry La estructura es:
Entrada { Entrada anterior; Datos de objeto; Entrada siguiente; } Entre ellos, el elemento elemento de Tipo de objeto es el elemento que agregamos a la LinkedList, y luego la Entrada construye referencias hacia adelante y hacia atrás privadas, siguientes y finalmente El objeto Entrada generado se agrega a la lista vinculada. En otras palabras: LinkedList mantiene los objetos de entrada uno por uno. ## 2. Cola personalizada (cola)






package com.javase.linkedlist;

import java.util.LinkedList;

public class MyQueue {
    
    
	@SuppressWarnings("unchecked")
	private LinkedList list = new LinkedList();
	
	//将元素对象放到队列里面去
	@SuppressWarnings("unchecked")
	public void put(Object o){
    
    
		list.addLast(o);
	}
	
	//取元素
	public Object get(){
    
    
		Object o = list.getFirst();
		list.removeFirst();
		return o;
	}
	
	public boolean isEmpty(){
    
    
		return list.isEmpty();
	}
	
	public static void main(String[] args) {
    
    
		MyQueue myQueue = new MyQueue();
		myQueue.put(new Integer(1));
		myQueue.put(new Integer(2));
		myQueue.put(new Integer(3));
		
		System.out.println(myQueue.get());
		System.out.println(myQueue.get());
		System.out.println(myQueue.get());
		
		System.out.println(myQueue.isEmpty());
	}
}

Supongo que te gusta

Origin blog.csdn.net/xiogjie_67/article/details/108540780
Recomendado
Clasificación