[PDF] [PDF] Cours dAlgorithmique

succession finie et non ambigüe d'opérations ; se termine toujours (Note : semi- algorithme) Définition (Notion de Programme) suite d'instructions définies dans un 



Previous PDF Next PDF





[PDF] COURS ALGORITHMIQUE ET PROGRAMMATION INFORMATIQUE

12 mar 2013 · pré et post conditions • Structures algorithmiques fondamentales: • Implantation des algorithmes dans un langage de programmation • 



[PDF] Cours dAlgorithmique

succession finie et non ambigüe d'opérations ; se termine toujours (Note : semi- algorithme) Définition (Notion de Programme) suite d'instructions définies dans un 



[PDF] INITIATION A LALGORITHMIQUE INF 102 NOTES DE COURS

Un algorithme est correct si pour toute instance du problème il se termine et produit une sortie correcte Les algorithmes peuvent être spécifiés en langage humain 



[PDF] Cours Introduction a lalgorithmique

3 – Traduire cet algorithme en langage de programmation 4 – Compiler PASCAL Principaux langages étudiés au cours de la licence (parcours informatique)



[PDF] Cours 1 Introduction aux algorithmes - IGM

20 sept 2013 · Algorithme et programme • Enjeux de l'algorithmique • Composants d'un algorithme • Variables et affectation Plan du cours 1 – Introduction 



[PDF] Algorithmique et programmation - USTO

Cours Travaux dirigés Travaux pratiques SUPPORT DE COURS EN INFORMATIQUE O2 cet algorithme au moyen d'un langage de programmation



[PDF] Introduction à lalgorithmique - Cours, examens et exercices gratuits

121 Exercices 123 6 2 Conservation de la structure de tas 124 Exercices 125 6 3 Construction d'un tas 126 Exercices 128 6 4 Algorithme du tri par tas



[PDF] Algorithmique et programmation : les bases (Algo) Corrigé

Cours Algo, Semaine 1 avril–mai 2013 Algorithmique et 3 2 Structure d'un algorithme 3 2 1 Exemple d'algorithme : calculer le périmètre d'un cercle



[PDF] Cours Algorithme et Programmation - FSG

Rédiger un programme consiste à préparer le travail à FAIRE FAIRE à la machine, sous forme d'une liste d'instructions Les instructions que peut exécuter  



[PDF] Chapitre 1: Introduction à lalgorithmique - LAMSADE

Sommaire 1 Présentation du cours 2 Introduction et définitions Pourquoi l'étude des algorithmes ? Définitions 3 Paradigmes et langages de programmation

[PDF] cours algorithme procedure et fonction pdf

[PDF] cours algorithme seconde pdf

[PDF] cours alimentation en eau potable pdf

[PDF] cours alphabet arabe pdf

[PDF] cours amp df1

[PDF] cours amp gratuit

[PDF] cours amp pdf

[PDF] cours analyse 1

[PDF] cours analyse 5

[PDF] cours analyse économique l1

[PDF] cours analyse mathématique pdf

[PDF] cours analyse mathématique s1 economie pdf

[PDF] cours anatomie physiologie infirmier pdf

[PDF] cours anglais juridique pdf

[PDF] cours annuités mathématiques financières pdf

1 de 16

Cours d"Algorithmique

Florent Hivert

Mél :Florent.Hivert@lri.fr

Adresse universelle :http://www.lri.fr/˜hivert

2 de 16

Informations pratiques

25heures de cours;

25heures de travaux dirigés;

Évaluation :

2 contrôles + examen final + mini projets.

3 de 16

Plan du cours

1Introduction;2Notion de complexité;3Tableaux et type de donnée abstraîts;4Listes chaînées;5Trouver et trier;6Arbres;

4 de 16

Généralités sur le traitement de l"information Les ordinateurs sont utilisés pourle traitement d"informations; le stockage d"informations.

5 de 16

Généralités sur le traitement de l"information (2) Le schéma global d"une application informatique est toujours le même :RéceptionTraitement desÉmission d"informationsinformationsd"informations déduites Exemple:réception desomme de cesnvaleursémission de la nvaleurs!et division!moyenne numériquesdu résultat parnarithmétique

6 de 16

La notion de programme

Tout traitement demandé à la machine, par l"utilisateur, est effectué par l"exécution séquencée d"opérations appelées instructions. Une suite d"instructions est appelée unprogramme.Retenir Un programme est unesuite d"instructionspermettant à une

système informatique d"exécuter une tâche donnéeécrit dans un langage de programmation compréhensible

(directement ou indirectement) par un ordinateur.

Données

=)Programme=)Résultats

7 de 16

Qu"est-ce que la programmation?

Retenir

Écriture d"unprogrammedans un langage de programmation donnée. Langage de programmation: ensemble de règle de vocabulaire et de grammaire compréhensible par un ordinateur.int fun(int x) { x = x + 1; return x; void main(void) { printf("%i", fun(2));

8 de 16

La notion d"algorithme

Pour résoudre un problème de manière informatique il y a un cheminement méthodique à respecter :

Énoncé Programme

Problème! !Algo.! !Résultats

algo. (instructions)

9 de 16

La notion d"algorithme (2)

Définition (Notion d"Algorithme)description formelle d"unprocédé de traitementqui permet, à partir d"un ensemble d"informations initiales, d"obtenir des informations déduites;succession finie et non ambigüe d"opérations;

se termine toujours(Note : semi-algorithme).Définition (Notion de Programme)suite d"instructions définies dans un langage donné;

décrit un algorithme.

10 de 16

11 de 16

12 de 16

Exemple d"algorithme

Algorithme (Calcul de la moyenne d"un tableau de notes) Entrées : un entier n, un tableau de n nombres à virgules

Sorties : la moyenne des nombres du tableau

i est un entier; s un nombre à virgule. initialiser s avec 0 pour i de 1 à n faire ajouter le i-ème élement du tableau à s retourner s=n

12 de 16

Exemple d"algorithme

Algorithme (Calcul de la moyenne d"un tableau de notes) Entrées : un entier n, un tableau de n nombres à virgules

Sorties : la moyenne des nombres du tableau

i est un entier; s un nombre à virgule. initialiser s avec 0 pour i de 1 à n faire ajouter le i-ème élement du tableau à s retourner s=nQuel est le nombre d"additions effectuées par cet algorithme?

13 de 16

Différentes problématiques

terminaison: terminera en un temps fini.complexité en temps: terminera en un temps borné (raisonnable).complexité en espace: terminera en utilisant une quantité de mémoire bornée (raisonnable).correction: si l"algorithme termine en donnant une

proposition de solution, alors cette solution est correcte.complétude: pour un espace de problèmes donné,

l"algorithme, s"il termine, donnera toujours des propositions de solutions.

14 de 16

Pourquoi faire

" I will, in fact, claim that the difference between a bad programmer and a good one is whether he considers his code or his data structures more important. Bad programmers worry about the code. Good programmers worry about data structures and their relationships. " - Linus Torvalds (creator of Linux) " Algorithms + Data Structures = Programs. " - Niklaus Wirth

15 de 16

Objectifs du cours d"algorithmique

Concevoir des algorithmes simples;

Analyser les performances d"un algorithme :

notion de complexité;Algorithmes fondamentaux : description et complexité;

Structures de données performantes :

tableaux dynamiques, tableaux triés, listes chaînées, arbres, tables de hachage. Choisir la bonne structure de donnée selon l"application!!!

15 de 16

Objectifs du cours d"algorithmique

Concevoir des algorithmes simples;

Analyser les performances d"un algorithme :

notion de complexité;Algorithmes fondamentaux : description et complexité;

Structures de données performantes :

tableaux dynamiques, tableaux triés, listes chaînées, arbres, tables de hachage.Choisir la bonne structure de donnée selon l"application!!!

16 de 16

Bibliographie

Mots clés : algorithmique, analyse d"algorithmes.Cormen, Leiserson, Rivest et Stein,Algorithmique : Cours avec

957 exercices et 158 problèmes, (trad. de l"anglais) Dunod,

2010.Knuth,The Art of Computer Programming (TAOCP)

Vol 1.-5., Addison-Wesley, Boston.Graham, Knuth et Patashnik,Mathématiques concrètes, Fondations pour l"Informatique, International Thomson publishing France, 1998.Froidevaux, Gaudel et Soria,Types de données et algorithmes

McGraw-Hill 1990- Ediscience International 1993, 577 pagesGranjon,Algorithmes en Pascal et en langage C, Dunod, 2004.

quotesdbs_dbs50.pdfusesText_50