Algorithme " La complexité "
Fermé
Jiko-java
Messages postés
186
Date d'inscription
dimanche 25 septembre 2016
Statut
Membre
Dernière intervention
22 juillet 2017
-
10 déc. 2016 à 04:39
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 14 déc. 2016 à 23:42
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 14 déc. 2016 à 23:42
A voir également:
- Ce mot de passe ne répond pas aux critères de longueur, de complexité, de date ou d'historique de la stratégie de mot de passe de votre entreprise.
- Voir mot de passe wifi android - Guide
- Trousseau mot de passe iphone - Guide
- Mot de passe administrateur - Guide
- Identifiant et mot de passe - Guide
- Réinitialiser pc sans mot de passe - Guide
1 réponse
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
10 déc. 2016 à 07:39
10 déc. 2016 à 07:39
Bonjour,
La théorie de la complexité est une branche assez pointue de l'informatique. En général on ramène le problème cherché à un problème similaire dont on connaît déjà la complexité afin de déduire qu'ils ont la même complexité.
Dans tout les cas il faut décorreler le calcul de complexité de l'algorithme.
Ce n'est pas parce qu'un problème est en O(n) qu'il se code obligatoirement avec une boucle et en O(n²) avec deux boucles imbriquées.
Le calcul de la complexité n'aide généralement pas à déduire le code.
D'ailleurs certains problèmes existent dont on ne connaît pas de code capables d'atteindre la complexité théorique qu'ils pourraient avoir.
En revanche si tu as le code on peut en déduire la complexité, soit théoriquement par analyse, soit empiriquement en traçant un graphe.
La théorie de la complexité est une branche assez pointue de l'informatique. En général on ramène le problème cherché à un problème similaire dont on connaît déjà la complexité afin de déduire qu'ils ont la même complexité.
Dans tout les cas il faut décorreler le calcul de complexité de l'algorithme.
Ce n'est pas parce qu'un problème est en O(n) qu'il se code obligatoirement avec une boucle et en O(n²) avec deux boucles imbriquées.
Le calcul de la complexité n'aide généralement pas à déduire le code.
D'ailleurs certains problèmes existent dont on ne connaît pas de code capables d'atteindre la complexité théorique qu'ils pourraient avoir.
En revanche si tu as le code on peut en déduire la complexité, soit théoriquement par analyse, soit empiriquement en traçant un graphe.
10 déc. 2016 à 09:10
10 déc. 2016 à 09:56
Exemple :
La complexité s'exprimant sur f() est en O(n) car on appelle une seule fois chacun des String malgré les 3 boucles for qu'il est nécessaire de parcourir pour décomposer la structure objet initiale afin de traiter tous les String voulus.
10 déc. 2016 à 14:46
Dans ce cas puis-je en conclure que la complexité de cet Algorithme est exprimé en O(n^2) car j'Utilise plus d'une fois list2 ?
10 déc. 2016 à 17:01
Un exemple de O(n²) serait l'utilisation d'un f() à deux paramètres ayant chacun un élément de la liste.
Ici on peut voir ça comme un tableau, avec les éléments de la liste en colonne et les mêmes éléments de la même liste en ligne, donc les résultats f() sont inscrits sur chaque case de ce tableau, et sont donc beaucoup plus nombreux que lors de l'exemple précédent dont les appels à f() ne se faisaient que sur une dimension, en ligne.
11 déc. 2016 à 08:20