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 :

Tri classiques - utilisations - apprentissage


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 26
    Par défaut Tri classiques - utilisations - apprentissage
    Bonjour !

    J'ai juste une question toute simple, est-ce que vous connaissez "par coeur" les tris classiques comme le tri par insertion, le tri par pivot, ... ?

    Parce que lorsque j'en ai besoin, je fais une recherche rapide mais je ne les connais pas par coeur.

    Merci bien !

  2. #2
    Membre Expert Avatar de Trademark
    Profil pro
    Inscrit en
    Février 2009
    Messages
    762
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 762
    Par défaut
    Je pense que la plupart des gens peuvent te les coder en relisant leur description et que la plupart les ont codé dans leur vie et connaissent leurs caractéristiques (complexité spatiale et temporelle). En tout cas il me faudrait un peu du temps pour en coder un de nul part...

    Aussi, personne ne les "recodent" pas car on utilise ceux déjà disponibles dans les librairies du langage. Et si on a à les recoder c'est certainement pas aussi simple qu'un tri bateau.

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Septembre 2013
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 639
    Par défaut
    Il suffit de retrouver le principe de l'algo (de mémoire ou par une recherche). Ensuite on gribouille et on réfléchit pour trouver l'algo exact et sa complexité, puis on peut ensuite en faire une implémentation correcte. Les apprendre par coeur n'aurait aucun sens, dans ce cas il y aurait des centaines d'algorithmes (pas seulement de tri) à connaître par coeur.

  4. #4
    Membre très actif Avatar de zaza576
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2013
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2013
    Messages : 175
    Par défaut
    J'avais un enseignant qui me disait " Fais un dessin, tu verras ca ira mieux après..."

    Si tu maîtrises bien un algorithme, tu peux le connaître par coeur.
    Si tu doutes, poses ton algorithme sur le papier quitte à le dessiner si tu peux et essaies de parcourir tous les cas de figure. Une fois ceci fait, tu le codes.

    On n'est pas non plus des compilateurs ! On est humain à la base. Pourquoi tout vouloir apprendre par coeur ?

  5. #5
    Membre émérite
    Avatar de ol9245
    Homme Profil pro
    Chercheur
    Inscrit en
    Avril 2007
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Avril 2007
    Messages : 985
    Billets dans le blog
    1
    Par défaut
    je connais le principe de plusieurs d'entre eux. Je pourrais les coder si j'avais du temps à perdre. Je ne les coderai jamais dans la vraie vie pk coder c'est sympa, mais débugguer c'est beurk. et puis tous les langages ou presque ont une fonction sort. ceci dit c'est très très très utile de connaître les principes généraux d'un maximum d'algorithmes usuels. Les algorithmes, c'est la géographie de l'informatique. Ils permettent de savoir où on est et de se diriger vers là ou on veut aller.

  6. #6
    Membre très actif Avatar de zaza576
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2013
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2013
    Messages : 175
    Par défaut
    Hello,

    après c'est toujours intéressant, comme le disait le capitaine Haddock (ol9245), de connaître le contexte d'utilisation de ces algorithmes de tri et leur complexité.

    Quand tu auras à traiter des flots de données de plusieurs Gigaoctets et que tu devras trier cela, en fonction du type de données, et du type d'algorithme utilisé pour trier, le temps de calcul ne sera pas le même, ni la consommation mémoire et CPU.

    A chaque algorithme son problème. Eviter au maximum le O(n²) et O(e^n) ^^ !

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/05/2014, 10h29
  2. Un classique des méthodes de tri
    Par bros_70 dans le forum Langage
    Réponses: 4
    Dernier message: 11/04/2007, 17h03
  3. UTILISATION DE TRY et CATCH
    Par demcoul dans le forum JBuilder
    Réponses: 1
    Dernier message: 15/04/2006, 15h01
  4. UTILISATION DE Try
    Par demcoul dans le forum JBuilder
    Réponses: 2
    Dernier message: 08/04/2006, 17h57
  5. Simplicité d'utilisation et d'apprentissage ?
    Par kernel57 dans le forum WinDev
    Réponses: 3
    Dernier message: 02/12/2005, 14h52

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