Invertir arreglo con C sharp

Invertir arreglo en C#

Programa en C# para invertir un arreglo

En este post veremos un ejemplo para invertir un arreglo en C# usando métodos que el lenguaje provee.

Invertir arreglo en C#
Invertir arreglo en C#

Función Reverse en C#

Para invertir un arreglo simplemente llamamos al método Reverse de Array en C#, así como en el siguiente ejemplo:

Recuerda indicar al inicio Using System; y si no lo haces, llama a Reverse usando System.Array.Reverse.

Prueba el ejemplo aquí.

Usando método manual

Invertir arreglo con C sharp
Invertir arreglo con C sharp

Puede que quieras conocer el algoritmo para invertir el arreglo de manera manual o con métodos propios. Podemos hacer esto con un simple ciclo for que va desde el índice 0 hasta el índice central del arreglo.

En cada paso del ciclo intercambiamos el valor actual por el del extremo opuesto o extremo derecho. El código queda así:

Lo importante está desde la línea 18 hasta la línea 24. Hacemos el ciclo for empezando en 0 y vamos a ir hasta antes de Longitud del arreglo entre 2.

Estamos dividiendo de manera entera, por lo que el número será redondeado hacia abajo. Por ejemplo, si la longitud es 5, el número será 2, y el ciclo irá hasta 1. Si la longitud es 6, el número será 3 y el ciclo irá hasta 2.

Luego calculamos el índice del extremo derecho que en este caso está dado por la longitud del arreglo menos el índice del izquierdo menos 1. Almacenamos ese valor en un temporal y hacemos el intercambio.

La salida ya la has visto en la imagen del encabezado, e igualmente puedes probar el código en este enlace.

Si te gusta C# te invito a leer más posts sobre el lenguaje por aquí.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

2 comentarios en “Invertir arreglo en C#”

Dejar un comentario