Titre : | Exercices de programmation fonctionnelle en OCaml : une approche pédagogique par l'algorythmique, la preuve et la complexité |
Auteurs : | Fabienne Carrier, Auteur ; Pascal Lafourcade, Auteur ; Laurent Mounier, Auteur |
Type de document : | Monographie imprimée |
Editeur : | Paris : Ellipses, DL 2014 |
Collection : | Technosup (Paris), ISSN 1275-3955 |
ISBN/ISSN/EAN : | 978-2-7298-8788-9 |
Format : | 1 vol. (260 p.) / ill. / 26 cm |
Note générale : | Bibliogr. p. 257. Index |
Langues: | Français |
Index. décimale : | 005.133 (OCaml) |
Catégories : |
[Agneaux] Objective Caml (langage de programmation) > Problèmes et exercices |
Résumé : |
Ce livre d'exercices corrigés est destiné aussi bien aux étudiants de premier cycle en informatique qu'aux enseignants intéressés par la programmation fonctionnelle. L'ouvrage aborde notamment les notions de correction, de complexité et d'efficacité d'un algorithme fonctionnel, à travers les solutions détaillées d'une quarantaine d'exercices. Pour chacun de ces exercices, plusieurs solutions sont systématiquement proposées. Pour chaque solution, une analyse des temps de calcul et une preuve de correction sont entièrement rédigées. Les exercices traités sont classés en plusieurs catégories en fonction de la nature des données qu'ils manipulent : entiers, listes, arborescences. Cette distinction permet de mettre en avant un mode de programmation et de raisonnement guidé par la structure des données, si naturel en programmation fonctionnelle. Si les exercices proposés peuvent sembler simples et classiques au premier abord, ils ont été choisis pour permettre, par l'étude de leurs solutions, une découverte en profondeur de la programmation fonctionnelle, ce qui constitue l'originalité du livre. |
Sommaire : |
1: Définitions et notations: Notations et rappels en Ocaml; Preuve de terminaison et de correction; Complexité d'une fonction; Notation des fonctions. 2: Fonctions sur des entiers: Somme des n premiers entiers; Somme des n premiers entiers impairs; Somme des entiers entre p et q; Dernier chiffre de 2n; Y a-t-il un 0 dans la représentation binaire d'un entier?; Division euclidienne; Factorielle; Coefficients binomiaux; Puissance d'un entier; Puissance d'une fonction. 3: Fonctions sur des listes: Longueur d'une liste; Somme des entiers d'une liste; La fonction fold; La fonction map; La fonction find; Maximum d'une liste non vide d'entiers; Nombre d'occurrences d'un élément dans une liste; Y a-t-il plus de 0 que de 1 dans une liste?; Concaténer deux listes; Renverser une liste. 4: Fonctions sur des arbres binaires: Nombre de nœuds d'un arbre binaire; Hauteur d'un arbre binaire?; Un élément est-il présent dans un arbre binaire?; Nombre de nœuds d'un niveau donné; Un arbre binaire est-il équilibré?; Construire le symétrique d'un arbre; Ordre supérieur et arbres. |
Disponibilité (8)
Cote | Support | Localisation | Statut |
---|---|---|---|
INF/589 | Livre | bibliothèque sciences exactes | Consultable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |
INF/589 | Livre | bibliothèque sciences exactes | Empruntable |