RECIENTES

Ordenamiento de burbuja C# console

Ordenamiento de burbuja: Implementa el algoritmo de ordenamiento de burbuja para ordenar un arreglo de números ingresados por el usuario en orden ascendente. 



 
using System;

class Program
{
    static void Main()
    {
        Console.Write("Ingrese la cantidad de números a ordenar: ");
        int n = int.Parse(Console.ReadLine());

        int[] arreglo = new int[n];
        for (int i = 0; i < n; i++)
        {
            Console.Write($"Ingrese el número {i + 1}: ");
            arreglo[i] = int.Parse(Console.ReadLine());
        }

        BubbleSort(arreglo);

        Console.WriteLine("Arreglo ordenado:");
        foreach (int numero in arreglo)
        {
            Console.Write(numero + " ");
        }

        Console.ReadKey();
    }

    static void BubbleSort(int[] arr)
    {
        int n = arr.Length;
        for (int i = 0; i < n - 1; i++)
        {
            for (int j = 0; j < n - i - 1; j++)
            {
                if (arr[j] > arr[j + 1])
                {
                    // Intercambiar elementos arr[j] y arr[j+1]
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }
}

Este código pide al usuario ingresar la cantidad de números que desea ordenar y luego lee esos números uno por uno. Luego, utiliza el algoritmo de ordenamiento de burbuja para ordenar el arreglo en orden ascendente. Finalmente, muestra el arreglo ordenado en la consola.

Explicación del código:

  1. 1. Main: En el método Main, comenzamos pidiendo al usuario que ingrese la cantidad de números que desea ordenar (n). Luego, creamos un arreglo arreglo de tamaño n para almacenar esos números. A continuación, mediante un bucle for, solicitamos al usuario que ingrese los números uno por uno y los almacenamos en el arreglo.

  2. 2. BubbleSort: En el método BubbleSort, implementamos el algoritmo de ordenamiento de burbuja. El algoritmo consiste en recorrer el arreglo varias veces, comparando los elementos adyacentes y realizando intercambios si es necesario para colocar los elementos en la posición correcta.

  • n representa la longitud del arreglo.
  • El primer bucle for (índice i) recorre el arreglo desde el inicio hasta el penúltimo elemento. Esto se debe a que después de cada iteración del bucle, el elemento más grande ya está en su posición correcta, por lo que no es necesario seguir comparándolo.
  • El segundo bucle for (índice j) compara los elementos adyacentes del arreglo desde el inicio hasta n-i-1. Cada iteración de este bucle coloca el elemento más grande de los dos en la posición correcta (orden ascendente).

  • Si el elemento en arr[j] es mayor que el elemento en arr[j+1], se realiza un intercambio para que el elemento más grande quede en la posición j+1.


  1. 3. Imprimir resultado: Después de ordenar el arreglo usando el algoritmo de ordenamiento de burbuja, mostramos el arreglo ordenado en la consola.

Ejemplo de ejecución:

Supongamos que el usuario ingresa la siguiente secuencia de números para ordenar: 8, 3, 1, 7, 4

  1. 1. El programa le pedirá al usuario que ingrese la cantidad de números a ordenar: 5
  2. 2. Luego, el programa solicitará que ingrese los números uno por uno:

  • Si el elemento en arr[j] es mayor que el elemento en arr[j+1], se realiza un intercambio para que el elemento más grande quede en la posición j+1.

 
Ingrese el número 1: 8
Ingrese el número 2: 3
Ingrese el número 3: 1
Ingrese el número 4: 7
Ingrese el número 5: 4

3. Después de ingresar los números, el programa ejecutará el algoritmo de ordenamiento de burbuja en el arreglo y mostrará el resultado ordenado en la consola:
 
Arreglo ordenado: 1 3 4 7 8

El arreglo se ha ordenado en orden ascendente usando el algoritmo de ordenamiento de burbuja. El proceso implica comparaciones y cambios de posición para garantizar que el elemento más grande termine en la última posición. Luego, el proceso se repite para el subarreglo restante hasta que todo el arreglo esté ordenado.
Uso cookies para darte un mejor servicio.
Mi sitio web utiliza cookies para mejorar tu experiencia. Acepto Leer más