Articles of algorithme

Flux / Job Shop à la satisfiabilité booléenne partie 2

Voici la continuité de ma première question ( Flow Shop to Boolean satisfiability [réduction du temps polynomial] ). Parce que quelque chose ne va pas et je n’ai pas réussi à savoir où exactement. Je demande de nouveau l’aide des maîtres de StackOverFlow 🙂 Pour résumer ce que j’ai pour l’instant: J’ai un fichier d’entrée […]

Algorithme de remplissage

Je travaille dans une simple bibliothèque graphique en C avec turbo C ++ parce que je développe une version très primitive d’un programme de style peinture, tout fonctionne bien, mais je ne parviens pas à faire fonctionner l’algorithme de remplissage. En utilisant l’algorithme de remplissage par inondation 4 voies, j’ai d’abord essayé avec la version […]

Knapsack – Gagnez du temps et de la mémoire

Selon Wikipedia et d’autres sources que j’avais consultées, vous avez besoin de la masortingce m[n][W] ; n – nombre d’articles et W – capacité totale du sac à dos. Cette masortingce devient vraiment grosse, parfois trop grosse pour la manipuler dans le programme C. Je sais que la programmation dynamic est basée sur le gain […]

Qu’est-ce qui constitue une base pratique pour une bibliothèque de bignum et un algorithme de test de primalité?

Je vais programmer le test de primalité de Solovay-Strassen présenté dans le document original sur la RSA. De plus, j’aurai besoin d’écrire une petite bibliothèque bignum. Ainsi, en cherchant une représentation pratique de bignum, je suis tombé sur cette spécification : struct { int sign; int size; int *tab; } bignum; J’écrirai également un programme […]

Comment transformer en boucle une équation mathématique?

Mon programme comporte les deux boucles suivantes et j’essaie de les écrire sous forme d’équations mathématiques, mais j’ai du mal à trouver un moyen concis de le faire: // Loop1 for (int i = 0; i < nr; i++) { array[i] = nepr; } // Loop2 for (int i = 0; i < (nvr % […]

Quel serait un moyen efficace d’append le multithreading à cet algorithme simple?

Je dirais que mes connaissances en C sont justes et que je souhaite développer un programme afin d’améliorer mes connaissances en programmation parallèle. Il s’agit essentiellement du programme auquel je me réfère est un générateur de force brute, pour incrémenter des mots de passe tels que 0000 .. zzzz d’un jeu de caractères spécifique: L’algorithme […]

Avec un nombre fixe de fonctions, comment puis-je calculer la taille d’un filtre de Bloom compte tenu de la probabilité de faux positifs?

J’ai besoin de mettre en place un filtre de bloom. Et je ne peux pas trouver un moyen de sortir de cela. Avec un nombre fixe de fonctions, comment puis-je calculer la taille d’un filtre de Bloom compte tenu de la probabilité de faux positifs? Par exemple, je veux que le filtre ait 10% de […]

Méthode à deux pointeurs

Récemment, j’ai rencontré une question lors d’un concours de programmation sur codeforces. Les étiquettes de problème indiquaient que les problèmes pouvaient être résolus en utilisant une méthode à deux pointeurs. Quelle est exactement la méthode à deux pointeurs?

Code de Huffman préservant l’ordre approximatif

Je travaille sur une affectation pour une classe d’algorithmes et de structures de données. J’ai de la difficulté à comprendre les instructions données. Je ferai de mon mieux pour expliquer le problème. L’entrée que je reçois est un entier positif n suivi de n entiers positifs représentant la fréquence (ou le poids) des symboles d’un […]

Dijkstra avec un tas. Comment mettre à jour le tas après la relaxation?

J’essaie d’implémenter l’algorithme de Dijkstra. foreach distance d d = INFINITY d[source] = 0 create_heap_based_on_Distances(); while(true) bestedge = heap[0] remove_minimum_from_heap //it will be heap[0] foreach adjacency of bestedge if (weight + bestedge_distance < current_distance) { current_distance = weight + bestedge_distance // Now I have to update heap, how can I do that? } if (heap_empty) […]