Ordenar una array e insertar un elemento dentro de la array en Java

La clasificación de una array se puede realizar utilizando la función de clasificación incorporada, mientras que para la inserción tenemos que crear una nueva array para hacerlo, ya que las arrays en Java son inmutables. Para obtener más información sobre la clasificación en Java, siga el artículo que se menciona a continuación:

Clasificación: Arrays.sort() en Java con ejemplos

Enfoque 1:

  1. Cree una nueva array de tamaño N+1.
  2. Copie la primera array en Nueva array.
  3. Inserta el número al final de la array.
  4. Ordenar la array.

Ejemplo: Insertar un elemento y luego ordenar la array.

Java

// Java program to insert an element in
// an array and then sorting it.
 
// Importing util files
import java.util.*;
 
public class Gfg {
 
    // Main function
    public static void main(String args[]) throws Exception
    {
 
        // Given number
        int given_number = 1;
 
        // Array
        int array[] = { 6, 7, 8, 2, 3, 4, 5, 9, 10 };
 
        // Creating new array with increased size
        int new_array[] = new int[array.length + 1];
 
        // Copying elements from one array to another
        for (int i = 0; i < array.length; i++) {
            new_array[i] = array[i];
        }
 
        // Adding new element
        new_array[new_array.length - 1] = given_number;
 
        // Sorting new array
        Arrays.sort(new_array);
 
        // print array
        for (int i = 0; i < new_array.length; i++)
            System.out.print(new_array[i] + " ");
    }
}
Producción

1 2 3 4 5 6 7 8 9 10 

Complejidad del tiempo: O(n log n)

Enfoque 2: 

  1. Ordenar la array.
  2. Cree una nueva array de tamaño N+1.
  3. Comience a atravesar la array dada y copie los elementos.
  4. Si el número dado es menor que el número presente en la array, agregue un número dado a la nueva array.
  5. Copie los elementos restantes de la array dada a la nueva array.

Ejemplo: Insertar un elemento y luego ordenar la array. 

Java

// Java program to insert an element
// in an array and then sorting it.
 
// Importing util files
import java.util.*;
 
public class Gfg {
 
    // Main function
    public static void main(String args[]) throws Exception
    {
 
        // Given Number
        int given_number = 1;
 
        // Array
        int array[] = { 6, 7, 8, 2, 3, 4, 5, 9, 10 };
 
        // Sort Given array
        Arrays.sort(array);
 
        // Creating new array with increased size
        int new_array[] = new int[array.length + 1];
 
        // Copying elements from one
        // array to another as in approach 2
        int i = 0, j = 0;
        for (i = 0; i < new_array.length; i++) {
            if (given_number <= array[i]) {
                new_array[i] = given_number;
                break;
            }
            else
                new_array[i] = array[j++];
        }
 
        // copy the remaining elements
        for (int k = i + 1; k < new_array.length; k++)
            new_array[k] = array[j++];
 
        // print new array
        for (i = 0; i < new_array.length; i++)
            System.out.print(new_array[i] + " ");
    }
}
Producción

1 2 3 4 5 6 7 8 9 10 

Complejidad del tiempo: O(n log n)

Enfoque 3:

  1. Crea un conjunto.
  2. Comience a agregar todos los elementos del conjunto.
  3. Copie los elementos restantes del conjunto dado a la nueva array.

Ejemplo: Insertar un elemento y luego ordenar la array. 

Java

// Java program to insert an element
// in an array and then sorting it.
 
// Importing util files
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
 
public class GFG {
 
    public static void main(String[] args)
    {
 
        // using wrapper class here for array,
        // to convert into object
        Integer arr[] = { 6, 7, 8, 2, 3, 4, 5, 9, 10 };
 
        Set<Integer> sets
            = new HashSet<Integer>(Arrays.asList(arr));
 
        sets.add(1);
 
        arr = sets.toArray(arr);
 
        // print the array
        System.out.println(Arrays.toString(arr));
    }
}
Producción

1 2 3 4 5 6 7 8 9 10 

Complejidad del tiempo: O(n log n)

Publicación traducida automáticamente

Artículo escrito por aditya_taparia 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 *