Problème du Sac à Dos fraction
Sac à dos fractionnaire Étant donné les poids et les valeurs de n articles, nous devons mettre ces articles dans un sac à dos de capacité C pour obtenir la valeur totale maximale dans le sac à dos.
Complexité, Tris ...
Sac à dos fractionnaire Étant donné les poids et les valeurs de n articles, nous devons mettre ces articles dans un sac à dos de capacité C pour obtenir la valeur totale maximale dans le sac à dos.
Étant donné un tableau a, nous devons trouver le produit minimum possible avec le sous-ensemble d'éléments présents dans le tableau. Le produit minimum peut être un seul élément aussi.
Étant donné un ensemble de travaux pour lesquels chaque travail a une date limite et les bénéfices associés si le travail est terminé avant la date limite. Il est également indiqué que chaque travail prend une seule unité de temps, de sorte que le délai minimum possible pour tout travail est 1. Comment maximiser le profit total si un seul travail peut être planifié à la fois.
Vous avez n activités avec leurs heures de début et de fin. Sélectionnez le nombre maximal d'activités pouvant être effectuées par une seule personne, en supposant qu'une personne ne peut travailler que sur une seule activité à la fois.
Un algorithme glouton (ou greedy algorithm en anglais) adopte une stratégie simple mais puissante : À chaque étape, il choisit le meilleur choix possible selon un critère local, sans jamais remettre en question les choix précédents. Autrement dit, l'algorithme avance pas à pas, en effectuant des choix immédiats qui semblent les plus avantageux sur le moment - d'où le terme "glouton" (celui qui "mange" tout de suite ce qui paraît le meilleur).
L'algorithme de Floyd-Warshall change de paradigme. Son objectif est de calculer simultanément les distances minimales pour tous les couples de sommets \((i,j)\). C'est un outil indispensable pour l'analyse de réseaux denses (où le nombre d'arêtes \(A\) est proche de \(S^2\)) et pour la détection de structures pathologiques comme les cycles de poids négatifs.
L'algorithme de Bellman-Ford est un algorithme de calcul des plus courts chemins depuis une source unique dans un graphe pondéré. Développé par Richard Bellman et Lester Ford dans les années 1950, il constitue une alternative plus robuste mais moins efficace que l'algorithme de Dijkstra.
L'algorithme a été conçu par Edsger W. Dijkstra en 1956 et publié en 1959. Dans sa lettre originale, il décrit sa découverte comme une solution "en 20 minutes" à un problème posé par un mathématicien non informaticien. La simplicité de sa formulation cache une profondeur conceptuelle qui en fait l'un des joyaux de l'algorithmique des graphes.
Lorsqu'on analyse un algorithme, on cherche à connaître son comportement pour des entrées de grande taille. Au lieu de mesurer le temps exact d'exécution (qui dépend des machines), on utilise des notations asymptotiques qui permettent de donner une estimation générale de la croissance de la fonction de complexité.
Un algorithme récursif est un algorithme qui résout un problème en se basant sur la résolution d’instances plus petites du même problème.
Cette série d'exercices porte sur la récursivité et l'analyse de complexité des algorithmes. Vous serez amené à écrire des fonctions récursives pour résoudre divers problèmes et à estimer leur complexité temporelle.
L'analyse des algorithmes est essentielle pour évaluer leurs performances indépendamment de la machine et du langage d'implémentation. Analyse asymptotique : étude du comportement d'un algorithme quand la taille de l'entrée devient très grande.