Invertir una lista significa que después de invertir la lista, el primer elemento debe intercambiarse con el último elemento, el segundo elemento debe intercambiarse con el penúltimo elemento, y así sucesivamente hasta que el elemento del medio y la lista resultante sea la lista invertida.
Ejemplo:
Input: "PLATFORM", "LEARNING", "BEST", "THE", "IS", "GFG" Output: Reverse order of given List :- [GFG, IS, THE, BEST, LEARNING, PLATFORM]
Principalmente podemos invertir la lista de tres maneras:
- Recursivamente
- Usando Colecciones.reverse()
- Usando los métodos List.add() y List.remove
Método 1: Uso de la recursividad
El proceso en el que una función se llama a sí misma directa o indirectamente se llama recursividad y la función correspondiente se llama función recursiva.
Java
// Java Program to Reverse a List recursively import java.io.*; import java.util.*; class GFG { public static <T> void revlist(List<T> list) { // base condition when the list size is 0 if (list.size() <= 1 || list == null) return; T value = list.remove(0); // call the recursive function to reverse // the list after removing the first element revlist(list); // now after the rest of the list has been // reversed by the upper recursive call, // add the first value at the end list.add(value); } public static void main(String[] args) { System.out.println( "Reverse order of given List :- "); List<String> gfg = new ArrayList<>( Arrays.asList("PLATFORM", "LEARNING", "BEST", "THE", "IS", "GFG")); revlist(gfg); System.out.println(gfg); } }
Reverse order of given List :- [GFG, IS, THE, BEST, LEARNING, PLATFORM]
Método 2: Usando Collections.reverse()
El método java.util.Collections.reverse() es un método de clase java.util.Collections. Invierte el orden de los elementos en una lista pasada como argumento.
Java
// Java program to reverse the list // using Collections.reverse() method import java.io.*; import java.util.*; class GFG { public static void main(String[] args) { List<Integer> number = new ArrayList<>( Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8)); System.out.println( "Reverse order of given List :- "); // the number list will be reversed using this method Collections.reverse(number); System.out.println(number); } }
Reverse order of given List :- [8, 7, 6, 5, 4, 3, 2, 1]
Método 3: Usar List.add() + List.remove()
El método List.add() de la interfaz List se usa para agregar el elemento especificado en el argumento al final de la lista.
El método List.remove() de la interfaz List se usa para eliminar el elemento especificado en el argumento de la lista.
Java
// Java program to reverse the list using List.add() // and List.remove() method import java.io.*; import java.util.*; class GFG { public static void main(String[] args) { List<Integer> number = new ArrayList<>( Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8)); System.out.println( "Reverse order of given List :- "); for (int k = 0, j = number.size() - 1; k < j; k++) { number.add(k, number.remove(j)); } System.out.println(number); } }
Reverse order of given List :- [8, 7, 6, 5, 4, 3, 2, 1]
Publicación traducida automáticamente
Artículo escrito por kaaruni1124 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA