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:
- Crea un objeto de TreeSet.
- Agregue elementos de array al TreeSet utilizando el método add().
- Imprima y muestre elementos en una array que se duplican usando el método add (elemento).
- Imprima y muestre elementos en una array después de eliminar los duplicados.
- Obtener el tamaño de TreeSet usando el método size().
- Convertir por encima de TreeSet a arreglos usando el método toArray() para la conversión.
- Iterando sobre los elementos de la array.
- 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)); } }
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