Ordenamiento por mezcla con un comparador personalizado

Rust Medium functions

Tarea «Ordenamiento por mezcla con un comparador personalizado»

Escribe una función `merge_sort` que tome un arreglo de enteros y un cierre comparador que determine el orden de clasificación. La función debe ordenar el arreglo en orden ascendente o descendente según el comparador y devolver un nuevo arreglo ordenado. La tarea es implementar el algoritmo de ordenamiento por mezcla con la capacidad de pasar una regla de comparación personalizada. Datos de entrada: primero un entero n (1 ≤ n ≤ 1000) — el número de elementos, luego n enteros, luego la cadena 'asc' para orden ascendente o 'desc' para orden descendente. Datos de salida: el arreglo ordenado separado por espacios.

Formato de entrada

Primera línea: un entero n (1 ≤ n ≤ 1000). Segunda línea: n enteros separados por espacios. Tercera línea: 'asc' o 'desc'.

Formato de salida

Una cadena de números ordenados separados por espacios.

main.rs