Algorithme des caractéristiques, à quoi sert-il, parties, exemples

Algorithme des caractéristiques, à quoi sert-il, parties, exemples

UN algorithme C'est un ensemble d'instructions conçues pour effectuer une tâche spécifique. Autrement dit, c'est une procédure systématique qui, dans un nombre fini d'étapes, produit la réponse à une question ou à la solution d'un problème. Un exemple d'algorithme est celui du moteur de recherche Google, dans lequel en insérant un mot, il donne plusieurs résultats sous la forme de pages Web.

Il peut s'agir d'un processus complexe, comme la reproduction d'un fichier musical, ou une opération simple, comme l'ajout de deux nombres. Dans la programmation informatique, les algorithmes sont créés en fonction. Ces fonctions sont de petits programmes qui peuvent être référencés par un programme majeur.

Une application pour visualiser les images peut contenir une bibliothèque de fonctions, chacune utilisant un algorithme particulier pour représenter les différents formats de fichiers d'image.

Un programme pour modifier les images peut contenir des algorithmes conçus pour traiter les données d'images. Certains exemples sont la coupe, la taille de la taille, la netteté, le flou, la réduction des yeux rouges et l'amélioration des couleurs.

[TOC]

Caractéristiques d'un algorithme

Clarté et précision

L'algorithme doit être clair et sans ambiguïté. Chacune de ses étapes ou actions doit être définie avec précision, être clairement claire dans tous les aspects et doit avoir une seule signification unique.

Billets bien définis

Un algorithme est des entrées nulles ou plus, tirées d'un ensemble spécifique d'objets. Si l'algorithme indique que les données d'entrée doivent être prises, ces données d'entrée doivent être bien définies.

Des sorties bien définies

L'algorithme a toujours une ou plusieurs sorties, qui ont une relation avec les entrées. L'algorithme doit clairement définir les informations de sortie et doit également être bien définie.

Finitude

L'algorithme doit être fini, c'est-à-dire qu'il doit toujours se terminer à un moment donné, après un nombre fini d'étapes, et ne pas s'accrocher à des liens infinis ou à des choses similaires.

Réalisable

L'algorithme doit être qualifié et simple, de sorte qu'il peut être exécuté sans problème avec les ressources disponibles. Par conséquent, vous ne devez contenir aucune technologie future.

Indépendance du langage

L'algorithme conçu doit être indépendant du langage, c'est-à-dire qu'il ne doit être formé que par des instructions simples qui peuvent être implémentées dans n'importe quel langage de programmation et, néanmoins, le résultat est toujours le même, comme prévu.

Programmes efficaces

Il existe toujours différentes façons d'effectuer une opération spécifique dans un programme. Par conséquent, les programmeurs cherchent à créer les algorithmes les plus efficaces possibles.

Avec l'utilisation d'algorithmes très efficaces, il peut être garanti que les programmes sont exécutés à une vitesse plus élevée, en utilisant un minimum de ressources système.

Cependant, les algorithmes ne produisent pas toujours la première fois. Pour cette raison, les programmeurs cherchent à les améliorer pour les inclure dans les futures mises à jour logicielles.

Il peut vous servir: les 30 physiciens les plus célèbres et les plus importants de l'histoire

Par conséquent, chaque fois que vous connaissez une nouvelle version d'une application avec une meilleure performance, cela signifie que cette version contient des algorithmes plus efficaces.

Qu'est-ce qu'un algorithme pour?

L'algorithme est un instrument extrêmement utile, utilisé pour effectuer des travaux. En informatique, lors du choix du meilleur algorithme, il est garanti que l'ordinateur fait la tâche donnée de la meilleure façon possible.

Par conséquent, il sert à optimiser un programme informatique avec les ressources disponibles. Autrement dit, lorsqu'un problème est décidé de résoudre les meilleurs algorithmes, la meilleure combinaison de vitesse du programme et la consommation de mémoire plus faible est souhaitée.

Les différents algorithmes qui peuvent être étudiés sont aussi variés que les problèmes qui résolvent. Cependant, il est très probable que le problème qui essaie est similaire à un autre problème à certains aspects.

En comprenant une large gamme d'algorithmes, vous pouvez choisir le plus adapté à un problème et l'appliquer correctement.

Compression de fichiers

Ces algorithmes sont ajustés et optimisés spécifiquement pour les types de fichiers auxquels ils sont dirigés. Par exemple, chaque format audio utilise un moyen différent de stocker des données. Lorsqu'il est décodé par le codec audio, il générera un fichier son similaire à la forme d'onde d'origine.

Données cryptées

Les algorithmes sont également utilisés pour protéger les données ou les lignes de communication. Au lieu de stocker des données compressées pour utiliser moins d'espace disque, ils sont stockés pour que d'autres programmes ne puissent pas les détecter.  Lorsque les données sont cryptées, ce qui est stocké ne ressemble pas à ce qu'il est.

Comment fonctionne un algorithme?

Pour faire faire un ordinateur pour faire quelque chose, vous devez écrire un programme informatique. Pour écrire ce programme, vous devez dire à l'ordinateur, étape par étape, ce que vous voulez faire.

Ensuite, l'ordinateur exécute le programme, effectuant chaque instruction automatiquement, pour atteindre le résultat final. Comme indiqué quoi faire à l'ordinateur, vous pouvez également choisir comment il sera, à travers l'algorithme, la technique de base utilisée pour faire le travail.

Exemple de cas

Disons que vous avez un ami qui arrive à l'aéroport et que vous devez aller de l'aéroport à notre maison. Ce sont quatre algorithmes différents qui pourraient être donnés pour résoudre cette situation:

Algorithme appelle-moi

- Lorsque l'avion arrive, appelez mon téléphone portable.

- Rassemblez avec moi à l'extérieur de la zone de livraison des bagages.

Algorithme de taxi

- Aller à l'arrêt de taxi.

Peut vous servir: cadre méthodologique: comment l'écrire, structure, exemples

- Aller à un taxi.

- Donnez mon adresse au conducteur.

Algorithme de bus

- Quittant l'aéroport, prenez le bus numéro 70.

- En atteignant la rue principale, prenez le bus 14.

- Sortez sur Elmo Street.

- Marchez deux pâtés de maisons vers le nord, jusqu'à ma maison.

Algorithme louer un véhicule

- Emmenez un service de transport à l'endroit où les voitures louent.

- Louer un véhicule.

- Suivez les instructions GPS pour se rendre chez moi.

Les quatre algorithmes atteignent exactement le même objectif, mais chacun le fait différemment. Chaque algorithme a également un coût et un temps de trajet différent. Par conséquent, l'algorithme est choisi en fonction des circonstances.

Parties d'un algorithme

Acquisition de données d'entrée

L'algorithme doit avoir certaines ressources pour lire les valeurs d'une source externe. La plupart des algorithmes nécessitent certaines valeurs de données pour définir un problème spécifique. Par exemple, les coefficients d'un polynôme.

Calcul

L'algorithme doit avoir certaines ressources pour pouvoir effectuer des calculs arithmétiques, des comparaisons, vérifier les conditions logiques, etc.

Sélection

L'algorithme doit avoir certains moyens pour pouvoir choisir entre deux ou plusieurs plans d'action possibles, sur la base des données initiales, sur les entrées des utilisateurs et / ou dans les résultats calculés.

Itération

L'algorithme doit avoir certains moyens pour pouvoir répéter un ensemble d'instructions, soit par un nombre fixe de fois, soit jusqu'à ce qu'une condition logique soit remplie.

Résultats ou rapport de sortie

L'algorithme doit avoir certaines ressources pour informer l'utilisateur les résultats qui ont été calculés, ou pour pouvoir demander des données utilisateur supplémentaires.

Types d'algorithmes

Algorithme récursif

Cet algorithme est très intéressant, car il est appelé lui-même avec une valeur différente en tant que paramètre d'entrée, qu'il a obtenu après avoir résolu le paramètre d'entrée précédent. C'est-à-dire qu'il s'appelle à plusieurs reprises jusqu'à ce que le problème soit résolu.

Des problèmes tels que la tour Hanoi ou la recherche profonde d'un graphique peuvent être facilement résolus en utilisant ce type d'algorithmes.

Algorithme diviser et conquérir

Dans ces algorithmes, il est divisé en deux parties. Dans la première partie, le problème en question est divisé en sous-problèmes plus petits du même type. De même, dans la deuxième partie, leurs sous-problèmes sont résolus, combinant les deux parties pour produire la solution finale du problème.

Par exemple, avec ces algorithmes, vous pouvez effectuer des ordinations pour la combinaison et les ordonnations rapides.

Algorithme de programmation dynamique

Ces algorithmes fonctionnent en se souvenant des résultats de l'exécution précédente et en les utilisant pour trouver de nouveaux résultats. C'est-à-dire qu'ils résolvent des problèmes complexes les divisant en plusieurs sous-problèmes simples, puis résolvant chacun d'eux, puis les stockant pour les utiliser plus tard.

Peut vous servir: méthode quantitative

Algorithme de force brute

Cet algorithme recherche aveuglément toutes les solutions possibles pour trouver une ou plusieurs solutions qui peuvent résoudre une fonction. Vous pouvez penser à une force brute comme si toutes les combinaisons de nombres possibles étaient utilisées pour ouvrir un coffre-fort.

Algorithme arrière

Cet algorithme résout les problèmes récursivement et essaie de résoudre un problème en résolvant chaque partie. Si la solution échoue, elle est éliminée et revient pour trouver une autre solution.

C'est-à-dire que cet algorithme résout un sous-problème, mais si cela ne résout pas le problème total, il annule la dernière étape et recommence pour trouver la solution au problème.

Exemples d'algorithmes

Algorithme récursif

Ce pseudocode trouve le factoriel d'un numéro "N" non négatif, en utilisant un algorithme récursif:

Algorithme de programmation dynamique

La séquence de Fibonacci est un bon exemple d'algorithme de programmation dynamique. Il peut être vu dans ce pseudocode:

- Oui (n = 0 ou n = 1), fibonacci (n) = 0

- Sinon, fibonacci (n) = fibonacci (n-1) + fibonacci (n-2)

Algorithme arrière

Le problème d'échecs des 8 reines est un bon exemple. Ce problème établit que sur une planche d'échecs, il y a 8 reines et doit être placée de telle manière qu'aucune des reines n'est en mesure d'attaquer une autre après avoir organisé.

Divers exemples

- Algorithme de diagnostic du VIH.

Algorithme de diagnostic du VIH. Source: Immunopedia / CC By-S (https: // CreativeCommons.Org / licences / by-sa / 4.0)

- Les moteurs de recherche Internet utilisent des algorithmes brevetés pour afficher les résultats les plus pertinents de leur index de recherche pour des consultations spécifiques.

- Les recettes, comme les équations mathématiques, sont des algorithmes.

- Le courrier électronique sait où envoyer des remerciements aux algorithmes.

- Le contenu vu sur les réseaux sociaux provient des algorithmes. En fait, tout ce qui est fait sur le Web est un produit d'algorithmes.

- Les jeux vidéo sont des récits algorithmiques.

- Les applications téléphoniques intelligentes sont simplement des algorithmes.

- La plupart des transactions financières sont effectuées via des algorithmes.

- Chaque fois qu'une colonne est commandée sur une feuille de calcul, les algorithmes interviennent.

Les références

  1. Lee Rainie (2017). Dépendant du code: Avantages et inconvénients de l'âge de l'algorithme. Pew Research Center. Tiré de: Pewresarch.org.
  2. Terme technique (2020). Algorithme. Tiré de: Techterms.com.
  3. Britannica (2020). Algorithme. Tiré de: Britannica.com.
  4. Educba (2020). Types d'algorithmes. Tiré de: educba.com.
  5. Comment Geek (2016). Quels sont les algorithmes informatiques, et comment fonctionnent-ils? Pris de: Howtogek.com.
  6. Comment fonctionne les trucs (2020). Qu'est-ce qu'un algorithme informatique? Tiré de: ordinateur.Workswork.com.