Adloun

OCaml (option informatique) · Chapitre 9 · Application directe du cours

Vérifier qu'une liste est triée

Algorithmique : les tris · niveau 1 (application)

É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.

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre