Tous les défis
Facile 0 résolus 0 % de réussite

Médiane d'une liste

Trouvez la valeur centrale d'une liste après l'avoir triée.

Triez les valeurs par ordre croissant. Pour un nombre impair de valeurs, prenez celle du milieu. Pour un nombre pair, prenez la moyenne arithmétique des deux valeurs centrales. Ce défi n'accepte que des listes non vides.

Implémentez median_number(numbers).

Entrée

numbers : La liste non vide de valeurs.

Sortie

Retournez la médiane sous forme de nombre ; elle peut se terminer par .5.

Contraintes

1 ≤ longueur de la liste ≤ 100 000. Chaque valeur est un entier compris entre −1 000 000 000 et 1 000 000 000.

Exemples

Exemple 1
Entrée :
numbers = [2, 8, 4, 10]

Sortie attendue :
expected = 6.0
Entrée :
std::vector<long long> numbers = {2, 8, 4, 10};

Sortie attendue :
double expected = 6.0;
Entrée :
long[] numbers = new long[] {2, 8, 4, 10};

Sortie attendue :
double expected = 6.0;

Explication

L'ordre trié est 2, 4, 8, 10. Le couple central donne une moyenne de (4 + 8) / 2 = 6.

Exemple 2
Entrée :
numbers = [9, 1, 4]

Sortie attendue :
expected = 4.0
Entrée :
std::vector<long long> numbers = {9, 1, 4};

Sortie attendue :
double expected = 4.0;
Entrée :
long[] numbers = new long[] {9, 1, 4};

Sortie attendue :
double expected = 4.0;

Explication

L'ordre trié est 1, 4, 9, dont la valeur centrale est 4.

Références

Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.

Apprenez des autres

Solutions de la communauté

Aucune solution publiée pour l'instant. Résolvez ce défi pour partager la première.