Selon cette page , l'algorithme de Dijkstra est simplement BFS avec une file d'attente prioritaire. Est-ce vraiment aussi simple que cela? Je crois que
Selon cette page , l'algorithme de Dijkstra est simplement BFS avec une file d'attente prioritaire. Est-ce vraiment aussi simple que cela? Je crois que
Ce que je veux faire, c'est transformer un problème mathématique que j'ai en un problème de satiabilité booléenne (SAT), puis le résoudre à l'aide d'un solveur SAT. Je me demande si quelqu'un connaît un manuel, un guide ou quelque chose qui m'aidera à convertir mon problème en une instance SAT....
En matière de conception d'algorithmes, on utilise souvent les techniques suivantes: Programmation dynamique La stratégie gourmande Diviser et conquérir Alors que pour les deux premières méthodes, il existe des fondements théoriques bien connus, à savoir le principe de l'optimalité de Bellman et la...
Les algorithmes de tri génériques prennent généralement un ensemble de données à trier et une fonction de comparaison qui peut comparer deux éléments individuels. Si le comparateur est une relation d'ordre¹, la sortie de l'algorithme est une liste / tableau trié. Je me demande si les algorithmes de...
Je veux savoir quel algorithme est le plus rapide pour la multiplication de deux nombres à n chiffres? La complexité de l'espace peut être détendue
Je suis curieux de savoir comment on pourrait compresser de manière très compacte le domaine d'un nom d'hôte IDN arbitraire (tel que défini par RFC5890 ) et je pense que cela pourrait devenir un défi intéressant. Un hôte ou un nom de domaine Unicode (U-label) se compose d'une chaîne de caractères...
Je veux prouver ou infirmer l'existence d'un algorithme qui, étant donné un tableau d'entiers, trouve trois indices i , j et k tels que i < j < k et A [ i ] < A [ j ] < A [ k ] (ou constate qu'il n'y a pas un tel triple) en temps linéaire.UNEAAi , ji,ji, jkkki < j < ki<j<ki...
J'ai terminé la plupart des éléments du livre Intro to Algorithms de Cormen et je suis à la recherche d'un livre d'algorithmes qui couvre le matériel au-delà du livre de Corman. Y a-t-il des recommandations? REMARQUE: J'ai posé cette question sur stackoverflow mais je n'étais pas trop satisfait de...
Un tableau ou un vecteur n'est qu'une séquence de valeurs. Ils peuvent sûrement être mis en œuvre avec une liste chaînée. Ce n'est qu'un groupe de nœuds avec des pointeurs vers le nœud suivant. Les piles et les files d'attente sont deux types de données abstraits couramment enseignés dans les cours...
Le titre pose la question. Nous avons en entrée une liste d'éléments que nous pouvons comparer (déterminer lequel est le plus grand ). Aucun élément ne peut être égal. Points clés: La comparaison n'est pas transitive (pensez aux ciseaux de papier de roche): cela peut être vrai: A> B, B> C,...
En mathématiques, il existe de nombreuses preuves d'existence non constructives, nous savons donc qu'un certain objet existe bien que nous ne sachions pas comment le trouver. Je recherche des résultats similaires en informatique. En particulier: y a-t-il un problème que nous pouvons prouver qu'il...
J'ai une affectation où je dois utiliser un arbre de recherche binaire et le modifier pour s'auto-ordonner de telle sorte que les éléments qui sont le plus consultés (ont une priorité plus élevée) soient en haut de l'arbre, la racine étant le nœud le plus consulté . Le professeur m'a donné le BST...
WalkSAT et GSAT sont des algorithmes de recherche locale simples et bien connus pour résoudre le problème de satisfiabilité booléenne. Le pseudocode de l'algorithme GSAT est copié de la question Mise en œuvre de l'algorithme GSAT - Comment sélectionner le littéral à retourner? et présenté...
Je voudrais écrire un programme simple qui accepte un ensemble de fenêtres (largeur + hauteur) et la résolution d'écran et affiche une disposition de ces fenêtres à l'écran de sorte que les fenêtres prennent le plus d'espace. Il est donc possible de redimensionner une fenêtre, tout en conservant...
J'interagis souvent avec des gens qui veulent demander un algorithme pour un problème de calcul (ou sa complexité), mais ils ne l'expriment pas de manière rigoureuse pour nous (les informaticiens) à comprendre. Les renvoyer à des livres comme CLRS n'est pas utile parce que les exemples là-bas ont...
Dans la plupart des implémentations d'algorithmes génétiques, l'accent est mis sur le croisement et la mutation. Mais d'une manière ou d'une autre, la plupart d'entre eux laissent de côté la nature diploïde (dominante / récessive) des gènes. Dans la mesure où ma compréhension (limitée) va la nature...
Je dois trouver un cycle négatif dans un graphique pondéré dirigé. Je sais comment fonctionne l'algorithme de Bellman Ford et qu'il me dit s'il y a un cycle négatif atteignable. Mais il ne le nomme pas explicitement. Comment puis-je obtenir le chemin réel du cycle?v 1 , v 2 , … v k , v...
On vous donne n entiers tous compris entre et . Sous chaque entier vous devez écrire un entier entre 0 et l avec la condition que les b i forment une séquence non décroissante. Définissez la déviation d'une telle séquence comme étant . Concevez un algorithme qui trouve les b_i avec l'écart minimum...
Y a-t-il des problèmes dans qui ont des algorithmes randomisés dépassant les limites inférieures des algorithmes déterministes? Plus concrètement, connaissons-nous des pour lesquels ? Ici \ mathsf {PTIME} (f (n)) signifie l'ensemble des langages décidables par une MT aléatoire avec une erreur...
Avant de lire L'Art de la programmation informatique (TAOCP) , je n'ai pas approfondi ces questions. J'utiliserais un pseudo-code pour décrire des algorithmes, les comprendre et estimer le temps d'exécution uniquement sur les ordres de croissance. Le TAOCP change complètement d'avis. TAOCP utilise...