Tri par fusion avec comparateur personnalisé

Rust Medium functions

Tâche «Tri par fusion avec comparateur personnalisé»

Écrivez une fonction `merge_sort` qui prend un tableau d’entiers et une fermeture-comparateur définissant l’ordre de tri. La fonction doit trier le tableau par ordre croissant ou décroissant selon le comparateur et retourner un nouveau tableau trié. La tâche consiste à implémenter l’algorithme de tri par fusion avec la possibilité de transmettre une règle de comparaison personnalisée. Données d’entrée : d’abord un entier n (1 ≤ n ≤ 1000) — le nombre d’éléments, puis n entiers, puis une chaîne 'asc' pour un tri croissant ou 'desc' pour un tri décroissant. Données de sortie : le tableau trié séparé par des espaces.

Format d\ entrée

Première ligne : un entier n (1 ≤ n ≤ 1000). Deuxième ligne : n entiers séparés par des espaces. Troisième ligne : 'asc' ou 'desc'.

Format de sortie

Une chaîne avec les nombres triés, séparés par des espaces.

main.rs