Évolution des entreprises

Pages: 18 (4282 mots) Publié le: 5 juin 2012
ALGORITHMIQUE, cours 1

Plan
Cours : S. Peyronnet

1

Comment me contacter?
sylvain.peyronnet@lrde.epita.fr

Structure du cours
• Complexité et algorithmique : définitions • Principales méthodes de tri • Structures de données de bases • Structures de données avancées • Principaux paradigmes algorithmiques

Support de cours Introduction to algorithms par Cormen, Leiserson, Rivest etStein.

2

Introduction

Notion d’algorithme

3

• Selon le Petit Robert : "ensemble des règles opératoires propres à un calcul.” • Un peu plus précisement : Une séquence de pas de calcul qui prend un ensemble de valeurs comme entrée (input) et produit un ensemble de valeurs comme sortie (output). • Un algorithme résout toujours un problème de calcul. L’énoncé du problème spécifie larelation input / output souhaitée.

Notion d’algorithme

4

Exemples :
1. Multiplication Input : deux entiers a et b Output : leur produit ab Algorithme : celui de l’école 2. Plus Grand Commun Diviseur (PGCD) Input : deux entiers a et b Output : pgcd(a,b) Algorithme : celui d’Euclide 3. Primalité Input : un entier a Question : a est-il un entier premier? Cas spécial : problème de décision -output = réponse oui/non à une question.

Notion d’algorithme

5

Donner une définition précise de la notion d’algorithme est assez difficile et complexe. Il existe plusieurs définitions mathématiques depuis les années 30. exemples : • fonctions récursives • λ-calcul • machines de Turing • RAM (Random Access Machine : machine à accès aléatoire)

Notion d’algorithme

6

Fait : Toutes cesdéfinitions sont équivalentes Thèse de Church : Tout ce qui est calculable intuitivement est aussi calculable par les objets formels ci-dessus Mais : Il existe des problèmes non calculables (indécidables) exemple : Problème de l’arrêt Input : Un algorithme (programme) A et un input I Output : A termine-t-il pour I?

Notion d’algorithme

7

preuve de l’indecidabilité (par l’absurde)Supposons que le problème de l’arrêt soit décidable. Cela signifie alors qu’il existe un programme B qui décide si un programme s’arrête. Définissons maintenant le programme C suivant: – C s’arrête quand le programme qu’il prend en entrée ne s’arrête pas. – C ne s’arrête pas quand le programme qu’il prend en entrée s’arrête. Bien sûr, un tel programme ne peut pas exister car si on l’utilise sur lui même, onobtient une contradiction. Et donc le problême de l’arrêt est indécidable.

Notion d’algorithme

8

Dans ce cours, on étudie seulement des problèmes pour lesquels il existe des algorithmes. En fait, on s’intéressera aux problèmes pour lesquels il existe des algorithmes efficaces. Un exemple typique de problème décidable pour lequel il n’y a pas d’algorithme efficace : le jeu d’échec (nombrede configurations est environ 1050 )

Complexité des algorithmes

9

On veut une mesure pour comparer des algorithmes On voudrait que la complexité : • ne dépende pas de l’ordinateur • ne dépende pas du langage de programmation • ne dépende pas du programmeur • ... etc ... • soit indépendante des détails de l’implémentation

Complexité des algorithmes

10

On choisit de travailler surun modèle d’ordinateur : RAM : • ordinateur idéalisé • mémoire infinie • accès à la mémoire en temps constant Le langage de programmation sera un pseudo-PASCAL. Pour mesurer la complexité en temps on choisit une opération fondamentale pour le problème de calcul particulier, et on calcule le nombre d’opérations fondamentales exécutées par l’algorithme. Le choix est bon si le nbre total d’opérationsest proportionnel au nbre d’opérations fondamentales.

Complexité des algorithmes

11

exemples :

Problème recherche d’un élément dans une liste multiplication des matrices réelles addition des entiers binaires

Opération fondamentale comparaison entre l’élément et les entrées de la liste multiplication scalaire opération binaire

Complexité des algorithmes

12

Le temps de...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Evolution du financement des entreprises
  • Evolution de carrière
  • Evolution des entreprises au 18ème siecle
  • Prévention des entreprises en difficulté et évolution de ce droit
  • Mana des entreprises projets d évolution Lacroix
  • Évolution
  • Evolution
  • Evolution

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !