Programa Java para eliminar entradas duplicadas de una array usando TreeSet

Las características de TreeSet son la preocupación principal, se usa ampliamente para eliminar duplicados en la estructura de datos de la siguiente manera:

  • TreeSet implementa la interfaz SortedSet . Por lo tanto, los valores duplicados no están permitidos y serán sobrantes.
  • Los objetos en un TreeSet se almacenan ordenados y en orden ascendente.
  • TreeSet no conserva el orden de inserción de los elementos, pero los elementos se ordenan por claves.
  • Si dependemos del orden de clasificación natural predeterminado, los objetos que se insertan en el árbol deben ser homogéneos y comparables. TreeSet no permite la inserción de objetos Heterogéneos. Lanzará una classCastException en tiempo de ejecución si intentamos agregar objetos heterogéneos.

Enfoque: método add() de Set 

En Java, aquí se usa en contexto para agregar un elemento específico a una colección Set. La función agrega el elemento solo si el elemento especificado aún no está presente en el conjunto; de lo contrario, la función devuelve False si el elemento ya está presente en el Conjunto.

Sintaxis:

boolean add(E element)

Where, E is the type of element maintained
by this Set collection.

Procedimiento:

  1. Crea un objeto de TreeSet.
  2. Agregue elementos de array al TreeSet utilizando el método add().
  3. Imprima y muestre elementos en una array que se duplican usando el método add (elemento).
  4. Imprima y muestre elementos en una array después de eliminar los duplicados.
  5. Obtener el tamaño de TreeSet usando el método size().
  6. Convertir por encima de TreeSet a arreglos usando el método toArray() para la conversión.
  7. Iterando sobre los elementos de la array.
  8. Imprima y muestre la array de strings anterior después de eliminar las entradas duplicadas.

Implementación:

 En el siguiente ejemplo, agregamos para cada elemento del Array al TreeSet más adelante en la verificación de duplicados. Finalmente, poner todos los elementos de TreeSet en Array y poner «null» para todos los espacios sobrantes en Array, e imprimir los elementos de la array.

Ejemplo

Java

// Java Program to remove duplicates entries
// from  an Array using TreeSet
 
// Importing Arrays and TreeSet class from
// java.util package
import java.util.Arrays;
import java.util.TreeSet;
 
// Class to remove duplicates
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Input custom entries in an array
        // String type
        // Custom inputs
        String[] input
            = new String[] { "Hello",   "hi",     "Wow",
                             "cute",    "thanks", "hi",
                             "Aww",     "cute",   "baby",
                             "beloved", "Aww" };
 
        // Converting Array to String and printing it
        System.out.print(
            "Initial String Array(Containing Duplicates) : "
            + (Arrays.toString(input)));
 
        // Creating an object of TreeSet
        TreeSet<String> dupliCheckr = new TreeSet<String>();
 
        // Adding array elements in TreeSet
 
        // For added elements in TreeSet
        for (String element : input) {
 
            // Displaying duplicate entries
            if (!dupliCheckr.add(element)) {
 
                // Print and display elements in an array
                // which are duplicated.
                System.out.println(
                    "Duplicate Data entered : " + element);
            }
        }
 
        // Next line
        System.out.println();
 
        // Print and display elements in an array
        // after removing duplicates from it.
        System.out.println(
            "TreeSet(After Removing Duplicates) : "
            + dupliCheckr);
 
        // Next line
        System.out.println();
 
        // Getting size of TreeSet using size() method
        int length = dupliCheckr.size();
 
        // Converting above TreeSet to arrays
        // Using toArray() method
        input = dupliCheckr.toArray(input);
 
        // Iterating over array elements
        for (int i = length; i < input.length; i++)
            input[i] = null;
 
        // Print and display above string array
        // after removing duplicate entries from it
        System.out.println("Final String Array is : "
                           + Arrays.toString(input));
    }
}
Producción

Initial String Array(Containing Duplicates) : [Hello, hi, Wow, cute, thanks, hi, Aww, cute, baby, beloved, Aww]Duplicate Data entered : hi
Duplicate Data entered : cute
Duplicate Data entered : Aww

TreeSet(After Removing Duplicates) : [Aww, Hello, Wow, baby, beloved, cute, hi, thanks]

Final String Array is : [Aww, Hello, Wow, baby, beloved, cute, hi, thanks, null, null, null]

Publicación traducida automáticamente

Artículo escrito por piyushkr2022 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *