Informatique Fondamentale
Ecole polytechnique
Jean-Jacques Lévy
Table des matières
Avant-propos
Graphes
Définitions
Matrices d'adjacence
Fermeture transitive
Listes de successeurs
Graphes et arborescences
Arborescences de Trémaux
Arborescences des plus courts chemins.
Parcours de graphes
Graphes acycliques
Connexité dans un graphe non-orienté
Biconnexité dans un graphe non-orienté
Composantes fortement connexes
Programmes en OCaml
Analyse Syntaxique
Caractères
Chaînes de caractères
Alphabets, mots, langages
Expressions régulières
Analyse lexicale
Arbres de syntaxe abstraite
Grammaires
Exemples de Grammaires
Analyse syntaxique
Analyse descendante récursive
Autres méthodes d'analyse syntaxique
Programmes sur les arbres de syntaxe abstraite
Programmes en OCaml
Modularité et Objets
Un exemple: les files de caractères
Interfaces et modules
Structure de l'espace des noms, paquetages
Compilation séparée et librairies
Dépendances entre modules
Un exemple de module en C
Modules en OCaml
Programmation par objets
Hiérarchie des classes et sous-typage
Notation objet et liaison tardive
Droits d'accès, polymorphisme, surcharge et héritage
Classes abstraites et types disjonctifs
Exploration
Algorithmes gloutons
Exploration arborescente
Programmation dynamique
Programmes en OCaml
Correction
Correction de programmes itératifs scalaires
Correction de programmes itératifs avec des tableaux
Correction partielle et logique de Hoare
Implémentation des assertions
Fonctions et récursion
Terminaison et correction totale
Concurrence
Processus
Terminaison
Variables partagées
Sections critiques
Conditions
Etats d'un processus et ordonnancement
Les lecteurs et les écrivains
Implémentation de la synchronisation
Sémaphores
Producteur -- Consommateur
Machines finies et infinies
Exemples de machines finies
Automate fini
Automates finis non-déterministes
Les trois théorèmes fondamentaux
Machines de Turing
Autres définitions de machines de Turing
Thèse de Church
Indécidabilité de l'arrêt
Applications des automates finis à la concurrence
Graphique
Graphique ``bitmap``
Entrées graphiques
La bibliothèque AWT
Un exemple d'appliquette
Enveloppe convexe
Java
Un exemple simple
Quelques éléments de Java
Syntaxe BNF de Java
Bibliographie Java
Objective Caml
Un exemple simple
Quelques éléments de Caml
Bibliothèques
Syntaxe BNF de Caml
Références
Index
Ce document a été traduit de L
A
T
E
X par
H
E
V
E
A et H
A
C
H
A
.