suivant:
Complexité des algorithmes
monter:
Algorithmique
précédent:
Algorithmique
Table des matières
Complexité des algorithmes
Borne asymptotique supérieure
Mesure de temps d'exécution
Algorithmes en temps constant,
Algorithmes de complexité linéaire,
Algorithmes de complexité logarithmique,
Algorithmes de complexité quadratique
Algorithmes de complexité
Algorithmes de complexité exponentielle
Algorithmes de complexité polynomiale
,
fixé
Algorithmes itératifs
Invariants de boucle
Le principe
Exemple
Terminaison
Le principe
Fin de l'exemple
Un autre exemple
Complexité
Récursivité
Sous-programmes récursifs
Factorielle
Sous-programmes récursifs terminaux
Factorielle
Exponentiation
Itérateurs
Listes chaînées
Notations et conventions
Rédaction
Exemple de calcul de complexité d'un algorithme récursif
L'algorithme
Résolution exacte
Vérification par récurrence
Problèmes
L'heure du code
Arbres
Définitions par induction
Définition
Exemple
Expressions arithmétiques
Application aux arbres binaires
Preuves par induction
Lien avec les preuves par récurrence
Application aux EATPs
Algorithmique dans les arbres
Arbres
-naires
Files de priorité
Implémentations naïves
Tas
Définition
Extraction du minumum
Insertion
Suppression du minimum
Implémentation
Tas binomial
Arbre binomial
Fusion
Tas binomial
Implémentation
Extraction du minimum
Fusion
Hachage
Principe
Collisions
Gestion des collisions par chaînage
Gestion des collisions par adressage ouvert
AVL
Arbres binaires de recherche
Complexité dans le pire de cas
Rotations
AVLs
Rééquilibrage
Insertion
Suppression
Compléments
Modélisation
Définition
Exemple
Données
Contraintes
Question
Sensibilisation à la complexité
Le tour de la table
De la terre à la Lune
En bref
Terminologie
Difficulté
Rappels de théorie des graphes
Définition d'un problème
Problèmes d'optimisation
Problèmethèque
Arbre couvrant de poids minimal
Ensemble stable maximal
Circuit eulérien
Circuit hamiltonien
Voyageur de commerce
SAT
Couverture
Coloration
Plus court chemin
Sac à dos
Exercices
Programmation linéaire
Exemple
Algorithme du simplexe en bref
Modéliser un programme linéaire
GLPK
Qu'est-ce que c'est ?
Où le trouver ?
La documentation
Les fonctions
Théorie de la complexité
Terminologie et rappels
Problèmes de décision
Instances
Algorithme polynomial
Les classes P et NP
La classe P
La classe NP
Relations d'inclusion
Réductions polynomiales
Définition
Exemple
Application
Les problèmes NP-complets
Courte méditation
3-SAT
Conséquences déprimantes
Un espoir vain
Introduction à la cryptographie
Définitions
La stéganographie
Les chiffres symétriques sans clé
Les chiffres symétriques à clé
Le chiffre de Vigenère
Enigma
Les algorithmes asymétriques
Un peu d'histoire[1]
Le principe
Programmation en C
GnuPG
Présentation
Utilisation
Génération d'une clé privée
Exportation de la clé publique
Importation
Liste des clés
Chiffrement
Déchiffrement
Signature
Bref
GMP
Présentation
Quelques points délicats
Compilation
Initialisation
Les fonctions
Affichage
Exemple
Pour terminer
Vigenere
Arithmétique
Divisibilité
Division euclidienne
Nombres premiers
Nombres premiers entre eux
Décomposition en produit de facteurs premiers
Application à la divisibilité
Application au calcul du PGCD
Théorème de Bezout
Théorème de Gauss
Algorithme d'Euclide
Algorithme d'Euclide pour le PGCD
Algorithme d'Euclide étendu (avec tableau)
Algorithme d'Euclide étendu (sans tableau)
Exercices
Morceaux choisis
Programmation en C
Applications avec GMP
Arithmétique modulaire
Congruences
Espace quotient
Opposé d'un élément de
Inverse d'un élément de
Eléments inversibles et fonction
d'Euler
Pratique de l'inversion
Petit théorème de Fermat
Théorème d'Euler
RSA
Principe
Chiffrement
Déchiffrement
Résistance aux attaques
Applications directes du cours
Exercices
Corrigés des programmes
Fonctions récursives
Fonctions récursives terminales
Itérateurs et applications
Tours de Hanoï
Suite de Fibonacci
Pgcd
Pavage avec des L
Complexes
Listes chaînées
Tri fusion
Tri par insertion
Transformée de Fourier
Polynômes
Arbres binaires et
-aires
Arbres syntaxiques
Tas binomiaux
AVL
Knapsack par recherche exhaustive
Prise en main de GLPK
Le plus beau métier du monde
Vigenere
Changement de base
Prise en main de GMP
Vigenere
Algorithme d'Euclide étendu sous forme de tableau
Algorithme d'Euclide étendu avec GMP
Espaces Quotients
Test de primarité
Rappels mathématiques
Sommations
Exercices
Ensembles
Définition
Opérations ensemblistes
Cardinal
-uplets
Parties
Définition
Composition
Classification des applications
Application réciproque
Raisonnements par récurrence
Principe
Exemple
Exercices
Analyse combinatoire
Factorielles
Arrangements
Combinaisons
Triangle de Pascal
Liens avec les ensembles
Exercices récapitulatifs
Echauffement
Formule de Poincaré
La moulinette à méninges
Bibliographie
klaus 2010-08-05