Ordenar y buscar un elemento en Java

En Java, ordenar y buscar un elemento en una array es muy fácil. A diferencia de C, donde tenemos que hacer que todas las funciones funcionen, Java tiene funciones incorporadas para hacer el mismo trabajo. Para ordenar una array existe una función de ordenación y para buscar un elemento en una array ordenada existe una función binarySearch(). Para obtener más información sobre estas funciones, siga los artículos que se mencionan a continuación:

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

Complejidad de tiempo: O (n log n)

Sintaxis para ordenar:

Arrays.sort(array_name);

Buscando: Arrays.binarySearch() en Java con ejemplos

Para usar la array de búsqueda binaria, debe ordenarse previamente

Puntos importantes:

  • Si la array de entrada no está ordenada, los resultados son indefinidos y negativos.
  • Si hay duplicados, no hay garantía de cuál se encontrará.

Complejidad de tiempo: O (log n)

Sintaxis para la búsqueda binaria:

Arrays.binarySearch(array_name, key);

Siempre podríamos crear funciones definidas por el usuario, pero las funciones integradas en Java ya utilizan los algoritmos de menor complejidad, por lo que no es necesario crear tales funciones.

Ejemplo 1: encontrar un elemento en una array ordenada.

Java

// Java program to find an 
// element in an sorted array
  
// Importing util files
import java.util.*;
  
public class Gfg {
  
    // Main function
    public static void main(String args[]) throws Exception
    {
  
        // Sorted Array
        int array[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
  
        // Using binarySearch to search for desired element
        int index = Arrays.binarySearch(array, 2);
  
        // Printing result
        if (index >= 0)
            System.out.println("Element 2 found at index: "
                               + index);
        else
            System.out.println("Element not found");
    }
}

Producción:

Element 2 found at index: 1

Ejemplo 2: ordenar una array y buscar un elemento en la array ordenada.

Java

// Java program for Sorting an array and
// searching for an element in the 
// sorted array
  
// Importing util files
import java.util.*;
  
public class Gfg {
  
    // Main function
    public static void main(String args[]) throws Exception
    {
  
        // Unsorted Array
        int array[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };
  
        // Sorting the array
        Arrays.sort(array);
  
        // Printing sorted array
        System.out.println("Sorted Array:");
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i] + " ");
        }
        System.out.println();
  
        // Using binarySearch to search for desired element
        int index = Arrays.binarySearch(array, 0);
  
        // Printing result
        if (index >= 0)
            System.out.println("Element 2 found at index: "
                               + index);
        else
            System.out.println("Element not found");
    }
}

Producción:

Sorted Array:
1 2 3 4 5 6 7 8 9 10 
Element 2 found at index: 1

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 *