Vérifier qu'une liste est triée
Exercice · OCaml (option informatique), chapitre 9 — Algorithmique : les tris
Énoncé
Écrire est_trie et l'appliquer à [1; 3; 3; 5] et [1; 4; 2].
Corrigé
let rec est_trie l =
match l with
| [] | [_] -> true
| x :: (y :: _ as reste) -> x <= y && est_trie reste
est_trie [1; 3; 3; 5] vaut true (croissante au sens large : <=), est_trie [1; 4; 2] vaut false (car 4 > 2). L'évaluation paresseuse de && arrête au premier défaut.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.