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 :

Complexité -> O(n)


Sujet :

Algorithmes et structures de données

  1. #1
    Membre éclairé Avatar de snipes
    Inscrit en
    Septembre 2004
    Messages
    547
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 547
    Par défaut Complexité -> O(n)
    salut tout le monde
    je suis a la recherche de cours et/ou exercices (avec le corrigé biensur) concernant le calcul de la complexité d'un algorithme (complexité en temps et en memoire)
    enfin plus des exercices quand meme ou des exemples expliquant à quel moment on dit que le complexité est egale : O(n) = nlogn ou encore logn ou 2^n etc
    je m y perd un petit peu

    tout aide est la bienvenue
    merc d'avance

  2. #2
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Bonjour,

    je n'ai pas de cours sous la main, est mon amis dans ce cas là.
    Juste une petite précision :
    Citation Envoyé par snipes Voir le message
    O(n) = nlogn
    Soit la compléxité est en O(n), soit en O(n log(n), il ne peut y avoir d'égalité.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  3. #3
    Membre éclairé Avatar de snipes
    Inscrit en
    Septembre 2004
    Messages
    547
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 547
    Par défaut
    ben justement j ai cherché sur google et je trouve des cours qui m'indique uniquement ce que ca signifie mais ca ne me dit pas a quel moment je dois l appliquer

  4. #4
    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 snipes Voir le message
    ben justement j ai cherché sur google et je trouve des cours qui m'indique uniquement ce que ca signifie mais ca ne me dit pas a quel moment je dois l appliquer
    ?

    La complexité est juste un indicateur pour juger de la performance d'un algorithme (performance mémoire, ou cpu, ou ...), par exemple pour faire des comparaisons avec d'autres algos.

    Si tu n'as pas besoin de juger/comparer la performance de ton algo, inutile de calculer sa complexité.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Membre éclairé Avatar de snipes
    Inscrit en
    Septembre 2004
    Messages
    547
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 547
    Par défaut
    lol je me suis mal exprimé sur ce coup la j avoue
    en fait je voulais dire que ca ne me dit pas a quel moment c'est nlogn ou logn etc
    pour ca que je demandais quelques exemples (differents cas si possible) me permettant de voir comment c'est calculé car moi je trouve toujours 0(n) ou 0(n^2 ou 3)

  6. #6
    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 snipes Voir le message
    en fait je voulais dire que ca ne me dit pas a quel moment c'est nlogn ou logn etc
    Généralement les log() apparaissent quand ont fait des dichotomies, c'est a dire souvent dans les algos recursifs du style: on sépare les donnés en 2 et on recommence.

    Par exemple, la recherche dans une liste triée: Tu prend l'élément au milieu de la liste, et si ce n'est pas le bon tu refais une recherche sur la sous-liste de gauche ou droite (qui est donc moitié moins grande)

    Le nombre de comparaison a faire pour une liste triée de taille n est donc:
    C(n) = 1 + C(n/2)

    (la comparaison de l'élément du milieu + la/les comparaisons de la sous liste)

    Il suffit de trouver le terme générale de cette suite. Grace a un surpuissant changement de variable n=2^t on obtient:

    C(2^t) = 1 + C(2^t/2) = 1 + C(2^(t-1))

    et par recurrence:

    C(2^t) = 1 + C(2^(t-1)) = 1 + 1 + C(2^(t-2)) = 1 + 1 + 1 + C(2^(t-3)) = ...
    C(2^t) = t + C(2^0) = t + constante

    donc C(2^t) = O(t)

    et avec le changement de variable inverse:

    C(n) = log(n)/log(2) = O(log(n))

    Bref, c'est que des maths...
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

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

Discussions similaires

  1. [complexite] whiel Var=true
    Par deeal dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 14/06/2005, 15h01
  2. Complexité en espace
    Par MAROIS dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 23/05/2005, 11h46
  3. Complexité d'uml...?
    Par le Daoud dans le forum Débuter
    Réponses: 5
    Dernier message: 23/12/2004, 18h58
  4. Complexités
    Par victorracine dans le forum Algorithmes et structures de données
    Réponses: 29
    Dernier message: 07/09/2002, 16h13

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