En informatique , les algorithmes s'appuient sur des structures de données afin d'exécuter leurs tâches de façon efficace. Une fois une structure de données a été mis en place , les algorithmes peuvent être développés, testés et fonctionnent . Structures de données et algorithmes sont utilisés dans presque tous les programmes de logiciels disponibles aujourd'hui. A propos des structures de données
En informatique , une structure de données est un moyen d'organiser et de stocker des données; structures de données cherchent à maximiser l'efficacité de stockage et de récupération des données dans un ordinateur. Différents types de structures de données sont adaptés à différentes tâches - par exemple , les B-trees sont souvent utilisés pour la gestion de bases de données , tandis que les tables de hachage sont utilisées pour les compilateurs . Concevoir et mettre en œuvre une structure de données efficace est essentielle pour concevoir des algorithmes efficaces pour un programme informatique .
Sur les algorithmes
En informatique , un algorithme est un ensemble d'instructions claires utilisé pour obtenir une sortie spécifique pour toute légitime - c'est-à- reconnu - entrée. Algorithmes s'appuient sur des structures de données pour réussir - il doit y avoir une structure de données en place avant algorithmes peuvent être développés et testés . C'est pourquoi certains programmeurs informatiques pensent que le secret de l'élaboration de bonnes logiciel réside dans la conception et l'utilisation de structures de données efficaces plutôt que des algorithmes intelligents.
Brute Force algorithmes
< br >
types " Brute Force " sont quelques-uns des algorithmes les plus élémentaires et direct. Comme son nom l'indique , les algorithmes de force brute nécessitent l' énoncé du problème à résoudre, ainsi que des définitions explicites de ses différentes composantes , afin de fonctionner correctement. Dans la programmation informatique , les algorithmes de force brute sont utilisés pour calculer les factorielles , exponentiation , à multiplier les matrices ou pour rechercher la clé une valeur dans une liste spécifiée.
Divide (ou diminution) and Conquer algorithmes
Photos
diviser et conquérir quelques-unes de la plupart des algorithmes les plus connus , et ils sont généralement utilisés pour construire des algorithmes récursifs - une sorte de boucle de rétroaction positive. Fidèles à leur nom, diviser pour régner algorithmes diviser un problème en deux petits problèmes que chaque faciles à traiter et résoudre séparément , les solutions sont ensuite combinés pour résoudre le problème initial . Dans diminuer et conquérir algorithmes , le problème initial est réduite à une taille que l'algorithme peut gérer. Une fois la solution trouvée, elle est mise à l'échelle de secours pour résoudre le problème initial . Diminuer et conquérir algorithmes sont également connus comme les algorithmes inductifs ou incrémentielle.
Transform and Conquer algorithmes
Transform and conquer algorithmes résoudre les problèmes de programmation dans l'une des trois façons , tout qui impliquerait la transformation - ou la traduction - le problème à quelque chose de plus facile à gérer . Une transformation et conquérir algorithme pourrait transformer le problème à un exemple simple du même problème dans un processus connu sous le nom " exemple la simplification. " Ils pourraient également transformer le problème à une nouvelle représentation du problème , qui est appelé «le changement de représentation. " Enfin, transformer et conquérir algorithmes peuvent aussi traduire le problème en un problème différent qui est plus facile à résoudre ; cette dernière méthode est appelée
vidéos de " réduction de problème. "