IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Bien enseigner l'algorithmique


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Inscrit en
    Mars 2006
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 352
    Par défaut Bien enseigner l'algorithmique
    Bonjour,
    je voudrais savoir quels sont les cours et documents que vous recommandez pour enseigner un module d'algorithmique ?
    Merci d'avance, cordi@lement.

  2. #2
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    En fait, l'algorithmique est assez large et possède plusieurs niveaux, parce qu'entre les structures de données simples (pile,files,arbres,graphes,...), leurs algorithmes classiques et les domaines plus pointus de l'algorithmique il y a du chemin, commence par bien définir le niveau (ce que tu veux que les gens sachent à la fin du module), après les documents sont innombrables,

    tu peux en trouver quelques-uns ici :

    http://algo.developpez.com/cours/

    Sinon, tu peux toujours te baser sur des livres :

    http://algo.developpez.com/livres/

    Surtout le premier, introduction à l'algorithmique qui est une très bonne référence.

  3. #3
    Inactif  
    Inscrit en
    Mars 2006
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 352
    Par défaut
    Bonjour, merci.
    Moi, je vise, pour le moment, l'algorithmique niveau 1, c.-à-d les structures de données simples (liste, pile, file, arbre, graphe), méthodes de hachages, complexité des algorithmes, ...etc.
    À bientôt.

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut Bien enseigner l'algorithmique
    Salut.

    Il y a chez nous un dicton qui dit: "C'est en forgeant qu'on devient forgeron!"
    Alors, fais de l'algorithmique appliquée pendant 20 ou 30 ans. ensuite, pour l'enseigner, ça viendra tout seul, tes cours seront passionnants parce que tu sauras, d'expérience personnelle, de quoi tu parles tu n'auras plus besoin de bouquin, tes étudiants seront enthousiasmés. Et je sais de quoi je parle!

    Bonne chance malgré tout.
    Jean-Marc Blanc

  5. #5
    Inactif  
    Inscrit en
    Mars 2006
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 352
    Par défaut
    Bonsoir,
    Citation Envoyé par FR119492 Voir le message
    Salut.

    Il y a chez nous un dicton qui dit: "C'est en forgeant qu'on devient forgeron!"
    Alors, fais de l'algorithmique appliquée pendant 20 ou 30 ans. ensuite, pour l'enseigner, ça viendra tout seul, tes cours seront passionnants parce que tu sauras, d'expérience personnelle, de quoi tu parles tu n'auras plus besoin de bouquin, tes étudiants seront enthousiasmés. Et je sais de quoi je parle!

    Bonne chance malgré tout.
    Jean-Marc Blanc
    tout ce que vous venez de dire est vrai, cependant j'ai besoin de vos conseils pour bien débuter ma carrière d'enseignant, merci.

    Cordialement.

  6. #6
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut Bien enseigner l'algorithmique
    Encore une remarque, et peut-être quelques pistes.

    Tout d'abord le terme "algorithmique" recouvre deux (ou plus) concepts qui n'ont pas grand-chose en commun.

    1) En ce qui concerne les algorithmes de tri, etc., je n'ai pas de compétences particulières. Toutefois, je te recommande de voir si tu trouves ton bonheur dans le livre de Donald Knuth: "The Art of Computer Crogramming".

    2) Ma spécialité est plutôt l'algorithmique numérique appliquée au métier de l'ingénieur. Pour ça, la référence est "Numerical Recipes". J'envisage de consacrer une partie de ma retraite à publier quelque chose, mais pour le moment ce n'est encore qu'un rève.

    Bonne chance
    Jean-Marc Blanc

  7. #7
    alex_pi
    Invité(e)
    Par défaut
    Citation Envoyé par sidahmed Voir le message
    Bonjour,
    je voudrais savoir quels sont les cours et documents que vous recommandez pour enseigner un module d'algorithmique ?
    Merci d'avance, cordi@lement.
    Si je puis juste me permettre, il semble que tu n'as pas donné une information pourtant très importante : quelle est l'audiance de tes cours. En effet, l'approche sera radicalement différente selon que tu enseignes à des étudiants ayant un fort background en mathématiques théoriques, ou à des étudiants en première année de MIAS, même s'ils n'ont dans les deux cas jamais réellement fait d'informatique avant. De même, le choix du langage d'implémentation sera très différents selon le contexte, allant du pseudo code au C, en passant pas caml (probablement light) ou peut être Pascal (mais pourquoi donc ? :-\). Puis le choix du langage entrainera d'ailleurs certain choix pour les algo enseignés. On présentera plus volontier l'algo de tri fusion dans le cadre d'un langage fonctionnel que dans celui d'un langage impératif.
    Bref, le fait que ce soit des débutants en algorithmique ne donne pas toute l'information nécessaire aux choix de l'approche.

  8. #8
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Le niveau est donné :

    Moi, je vise, pour le moment, l'algorithmique niveau 1, c.-à-d les structures de données simples (liste, pile, file, arbre, graphe), méthodes de hachages, complexité des algorithmiques, ...etc.
    Pour ce qui est du langage, personne n'en a parlé et ça n'a rien à faire ici.

  9. #9
    Membre expérimenté
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2007
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 193
    Par défaut
    Citation Envoyé par PRomu@ld Voir le message
    Le niveau est donné :



    Pour ce qui est du langage, personne n'en a parlé et ça n'a rien à faire ici.
    Si j'en ai parle, enfin pas d'un choix de langage, ici ce n'est pas notre soucis.
    mais du faite qu'il est toujours bon de faire des petites application pour que les etudiants impriment bien les concepts, apres peut etre que des personnes vont etre completement en desaccord avec moi sur ce sujet et proneront plutot de rester tres theorique, je ne sais pas

  10. #10
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Elboras Voir le message
    Si j'en ai parle, enfin pas d'un choix de langage, ici ce n'est pas notre soucis.
    mais du faite qu'il est toujours bon de faire des petites application pour que les etudiants impriment bien les concepts, apres peut etre que des personnes vont etre completement en desaccord avec moi sur ce sujet et proneront plutot de rester tres theorique, je ne sais pas
    Ca ne me dérange pas qu'il y est un peu de code pour expliquer un algo. La seule chose c'est qu'il ne faut pas utiliser des optimsations spécifiquez au langage lors de l'implementation.

    C'est parfois difficile de ne pas employer "telle fonction" ou "telle structure" spécifique au langage, tellement ca semble naturel (les cast en C, la STL en C++, les generics en Java, ...).
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  11. #11
    alex_pi
    Invité(e)
    Par défaut
    Citation Envoyé par PRomu@ld Voir le message
    Le niveau est donné :
    Moi, je vise, pour le moment, l'algorithmique niveau 1, c.-à-d les structures de données simples (liste, pile, file, arbre, graphe), méthodes de hachages, complexité des algorithmiques, ...etc.
    Je ne suis pas d'accord. Ce qui a été donné, c'est le niveau en algorithmique, qui n'a rien à voir avec le niveau des étudiants. Je ne pense pas que l'on enseigne la notion de complexité de la même façon a des étudiants maitrisant parfaitement la notion de limite et même d'équivalence entre fonctions (puisque les notation O et o sont utilisés en math) qu'à des étudiants venant d'avoir leur bacho. S'adapter à son auditoire est ce qui manque à un très grand nombre d'enseignant.

    Pour ce qui est du langage, personne n'en a parlé et ça n'a rien à faire ici.
    Tu dois bien exprimer ton algo d'une façon où d'une autre à un moment donné. Alors que ce soit en pseudo code ou en caml-light, il y a des fois où globalement il n'y a que la langue qui change, Mais la version caml-light pourra être exécuté. Pour certains étudiants, entre s'entendre dire "une complexité exponentielle ne pourra jamais être acceptable" et tester l'implémentation naïve de la fonction de fibonnacci contre son implémentation en log(n), il y a une grosse différence pédagogique. Donc je pense que se poser la question d'un choix de langage n'a pas rien à faire ici

  12. #12
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Le niveau était ici :

    Citation Envoyé par sidahmed
    algorithmique niveau 1
    Le niveau du cours induisait un peu le niveau des élèves. Ici, les élèves auront un niveau relativement faible en terme d'algorithmique (débutant ou tout juste initiés). Pour ce qui est de la notion de limite, la notation en algorithmique (grand O, ...) ne la pousse pas très loin et devrait donc être accessible à tous les bacheliers scientifiques (ou alors le niveau du bac aurait bien changé).

    Tu dois bien exprimer ton algo d'une façon où d'une autre à un moment donné. Alors que ce soit en pseudo code ou en caml-light, il y a des fois où globalement il n'y a que la langue qui change, Mais la version caml-light pourra être exécuté.
    Pour certains étudiants, entre s'entendre dire "une complexité exponentielle ne pourra jamais être acceptable" et tester l'implémentation naïve de la fonction de fibonnacci contre son implémentation en log(n), il y a une grosse différence pédagogique. Donc je pense que se poser la question d'un choix de langage n'a pas rien à faire ici
    En fait si tu as un algo en log(n), quelque soit le langage qui implémentera cet algorithme la complexité restera la même. Perdre les étudiants dans des considérations de langage n'est pas une mauvaise chose (j'ai déjà entendu des étudiants dire qu'un algo avait une meilleure complexité parce qu'il était écrit en C, c'est dire).

    Leur montrer dans la pratique ce que peut représenter la complexité soit en temps, soit en espace et ce qui est acceptable pour nos machines actuelles peut être intéressant mais ça ne relève pas d'un cours d'algorithmique pure (mais plus d'un cours d'algorithmique et programmation).

    De plus pour comprendre ce qu'est une pile, a mon avis pas besoin de langage de programmation, ça devait être séparé du cours d'algo. Ensuite reste à la charge des étudiants d'implémenter les algorithmes dans le langage qu'il souhaite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment bien déboguer son code ?
    Par D[r]eadLock dans le forum Débuter
    Réponses: 47
    Dernier message: 02/04/2024, 16h06
  2. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  3. Rech cours de base en Algorithmique
    Par ALKATRAZ dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 19/12/2002, 19h07
  4. logiciel de programmation en Algorithmique
    Par Thomas Lebrun dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 08/11/2002, 22h18
  5. compression de données du point de vue algorithmique
    Par GoldenEye dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 26/06/2002, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo