(* ===================================================== *)
(* Apprentissage de la programmation avec OCaml *)
(* Catherine Dubois & Valérie Ménissier-Morain *)
(* Éditions Hermès Sciences *)
(* Mars 2004 *)
(* ===================================================== *)
(* Fichier MLSRC/Tris_vecteurs/selection_vecteur.ml *)
(* ===================================================== *)
let indice_min_sous_vecteur t début fin =
let imin = ref début in
for i = début+1 to fin do
if t.(i) < t.(!imin) then imin := i
done;
!imin;;
let échanger t i j =
let tmp = t.(i) in
t.(i) <- t.(j);
t.(j) <- tmp;;
let tri_sélection t =
let indice_fin = (Array.length t)-1 in
for i = 0 to indice_fin-1 do
let j = indice_min_sous_vecteur t i indice_fin in
if j > i then échanger t i j
done;;
Ce document a été traduit de LATEX par
HEVEA.