Je préférerais aussi peu de définition formelle que possible et des mathématiques
La complexité temporelle d'un algorithme quantifie le temps nécessaire à un algorithme pour s'exécuter en fonction de la taille de l'entrée du problème. La complexité temporelle d'un algorithme est généralement exprimée en utilisant la notation en gros O, qui supprime les constantes multiplicatives et les termes d'ordre inférieur.
Je préférerais aussi peu de définition formelle que possible et des mathématiques
Quelle est la manière la plus concise et la plus efficace de savoir si un tableau JavaScript contient une valeur? C'est la seule façon que je connais de le faire: function contains(a, obj) { for (var i = 0; i < a.length; i++) { if (a[i] === obj) { return true; } } return false; } Existe-t-il un...
J'apprends les temps de fonctionnement et les temps amortis de Big O Notation. Je comprends la notion de temps linéaire O (n) , ce qui signifie que la taille de l'entrée affecte la croissance de l'algorithme proportionnellement ... et il en va de même pour, par exemple, le temps quadratique O (n 2...
Project Euler et d'autres concours de codage ont souvent un temps maximum pour s'exécuter ou les gens se vantent de la rapidité d'exécution de leur solution particulière. Avec Python, les approches sont parfois quelque peu compliquées - c'est-à-dire, ajouter du code temporel à __main__. Quelle est...
La question Comment trouver la complexité temporelle d'un algorithme? Qu'est-ce que j'ai fait avant de poster une question sur SO? J'ai traversé ça , ça et bien d'autres liens Mais nulle part où j'ai pu trouver une explication claire et simple sur la façon de calculer la complexité du temps. Qu'est...
Étant donné que les chaînes sont immuables dans .NET, je me demande pourquoi elles ont été conçues de telle sorte que cela string.Substring()prend du temps O ( substring.Length), au lieu de O(1)? c'est-à-dire quels étaient les compromis, le cas
Je comprends la notation Big-O, mais je ne sais pas comment la calculer pour de nombreuses fonctions. En particulier, j'ai essayé de comprendre la complexité de calcul de la version naïve de la séquence de Fibonacci: int Fibonacci(int n) { if (n <= 1) return n; else return Fibonacci(n - 1) +...
Quelle est la différence entre Big-O notation O(n)et Little-O notation
Y a-t-il des cas où vous préféreriez la O(log n)complexité O(1)temporelle à la complexité temporelle? Ou O(n)pour O(log n)? Avez-vous des
Les ressources que j'ai trouvées sur la complexité temporelle ne sont pas claires sur le moment où il est acceptable d'ignorer les termes d'une équation de complexité temporelle, en particulier avec des exemples non polynomiaux. Il est clair pour moi que, étant donné quelque chose de la forme n 2 +...
J'ai vu des revendications intéressantes sur les hashmaps SO re Java et leur O(1)temps de recherche. Quelqu'un peut-il expliquer pourquoi il en est ainsi? À moins que ces hashmaps ne soient très différents de l'un des algorithmes de hachage sur lesquels j'ai été acheté, il doit toujours exister un...
J'ai entendu quelqu'un dire que puisque la recherche binaire divise par deux l'entrée requise pour la recherche, c'est donc l'algorithme log (n). Comme je ne suis pas d'origine mathématique, je ne suis pas en mesure de m'y rattacher. Quelqu'un peut-il l'expliquer un peu plus en détail? doit-il...
L'algorithme de base pour BFS: set start vertex to visited load it into queue while queue not empty for each edge incident to vertex if its not visited load into queue mark vertex Je pense donc que la complexité du temps serait: v1 + (incident edges) + v2 + (incident edges) + .... + vn + (incident...
Supposons qu'on nous donne un tableau de n entiers représentant les cours des actions sur une seule journée. Nous voulons trouver une paire (buyDay, sellDay) , avec buyDay ≤ sellDay , de telle sorte que si nous achetions l'action le buyDay et la vendions le sellDay , nous maximiserions notre...
Quels sont certains algorithmes que nous utilisons quotidiennement qui ont des complexités O (1), O (n log n) et O (log
Ma connaissance du big-O est limitée, et lorsque les termes du journal apparaissent dans l'équation, cela me décourage encore plus. Quelqu'un peut-il peut-être m'expliquer en termes simples ce qu'est un O(log n)algorithme? D'où vient le logarithme? Cela s'est spécifiquement produit lorsque...
Les tableaux en JavaScript sont très faciles à modifier en ajoutant et en supprimant des éléments. Cela masque quelque peu le fait que la plupart des tableaux de langues sont de taille fixe et nécessitent des opérations complexes de redimensionnement. Il semble que JavaScript facilite l'écriture de...
Cette question précédente aborde certains des facteurs qui peuvent amener un algorithme à avoir une complexité O (log n). Qu'est-ce qui rendrait un algorithme une complexité temporelle O (log log
Qu'est-ce que le temps pseudopolynomial ? En quoi diffère-t-il du temps polynomial? Certains algorithmes qui fonctionnent en temps pseudopolynomial ont des temps d'exécution tels que O (nW) (pour le problème de sac à dos 0/1 ) ou O (√n) (pour la division d'essai ); pourquoi cela ne compte-t-il pas...
J'ai du mal à décider quelle est la complexité temporelle du plus grand algorithme de dénominateur commun d'Euclid. Cet algorithme en pseudo-code est: function gcd(a, b) while b ≠ 0 t := b b := a mod b a := t return a Cela semble dépendre de a et b . Je pense que la complexité temporelle est O (a%...