phhsnews.com


phhsnews.com / Quels sont les algorithmes informatiques et comment fonctionnent-ils?

Quels sont les algorithmes informatiques et comment fonctionnent-ils?


À moins que vous ne maîtrisiez les mathématiques ou la programmation, le mot «algorithm» pourrait vous sembler grec, mais c'est l'un des éléments de tout ce que vous utilisez pour lire cet article. Voici une explication rapide de ce qu'ils sont et comment ils fonctionnent.

Avertissement: Je ne suis pas un professeur de mathématiques ou d'informatique, donc tous les termes que j'utilise ne sont pas techniques. C'est parce que j'essaie de tout expliquer en anglais, car les gens ne sont pas très à l'aise avec les mathématiques. Cela étant dit, il y a des maths impliqués, et c'est inévitable. Math geeks, n'hésitez pas à corriger ou mieux expliquer dans les commentaires, mais s'il vous plaît, gardez simple pour les mathématiquement peu enclins parmi nous.

Image par Ian Ruotsala

Qu'est-ce qu'un algorithme?

Le mot ' algorithme 'a une étymologie similaire à' algèbre ', sauf que cela se réfère au mathématicien arabe lui-même, al-Khwarizmi (juste une friandise intéressante). Un algorithme, pour les non-programmeurs parmi nous, est un ensemble d'instructions qui prennent une entrée, A, et fournissent une sortie, B, qui modifie les données impliquées d'une certaine manière. Les algorithmes ont une grande variété d'applications. En mathématiques, ils peuvent aider à calculer des fonctions à partir de points dans un ensemble de données, parmi des choses beaucoup plus avancées. En dehors de leur utilisation dans la programmation, ils jouent un rôle majeur dans la compression de fichiers et le cryptage des données.

Un ensemble d'instructions

Disons que votre ami vous rencontre dans une épicerie et que vous le dirigez vers toi. Vous dites des choses comme «entrer par les portes du côté droit», «passer la section des poissons sur la gauche» et «si vous voyez la laiterie, vous me passez». Les algorithmes fonctionnent comme ça. Nous pouvons utiliser un organigramme pour illustrer les instructions en fonction de critères que nous connaissons à l'avance ou que nous connaissons au cours du processus.

(Image intitulée "Icebreaking Routine" EDIT: avec l'aimable autorisation de Trigger et Freewheel) Dirigez-vous sur le chemin, et en fonction de ce qui se passe, vous suivez le "flux" vers un résultat final. Les organigrammes sont des outils visuels qui peuvent plus facilement représenter un ensemble d'instructions utilisées par les ordinateurs. De même, les algorithmes aident à faire la même chose avec plus de modèles mathématiques.

Graphiques

Utilisons un graphique pour illustrer les différentes façons de donner des directions.

Nous pouvons exprimer ce graphique comme un lien entre tous ses points. Afin de reproduire cette image, nous pouvons donner un ensemble d'instructions à quelqu'un d'autre

Méthode 1

Nous pouvons représenter ceci comme une série de points, et l'information suivrait la forme standard de graph = {(x1 , y1), (x2, y2), ..., (xn, yn)}.

graphe = {(0,0), (3,0), (3,3), (5,5), ( 7,10), (8,7), (9,4), (10,1)}

Il est assez facile de tracer chaque point, l'un après l'autre, et de les relier au point précédent. Cependant, imaginez un graphique avec un millier de points ou plusieurs segments qui vont dans tous les sens. Cette liste aurait beaucoup de données, non? Et puis, avoir à connecter chacun, un à la fois, peut être une douleur.

Méthode 2

Une autre chose que nous pouvons faire est de donner un point de départ, la pente de la ligne entre le point suivant et indiquer où l'on peut s'attendre au prochain point en utilisant la forme standard du graphique = {(point de départ}, [m1, x1, h1], ..., [mn, xn, hn]}. Ici, la variable 'm' représente la pente de la ligne, 'x' représente la direction à compter (x ou y), et 'h' vous indique le nombre de points à compter dans cette direction.Vous pouvez également vous rappeler de tracer un point après chaque mouvement.

graphique = {(0,0), [0, x, 3], [0, y, 3], [1, x, 2], [2,5, x, 2], [-3, x, 1], [- 3, x, 1], [-3, x, 1]}

Vous retrouverez le même graphique, vous pouvez voir que les trois derniers termes de cette expression sont les mêmes, donc nous pouvons être en mesure de disons que chaque fois que vous voyez apparaître la variable «R», cela signifie répéter la dernière chose:

graph = {(0 , 0), [0, x, 3], [0, y, 3], [1, x, 2], [2.5, x, 2], [-3, x, 1], [R = 2]}

Et si les points individuels n'ont pas vraiment d'importance, et que seul le graphique lui-même le fait? Nous pouvons regrouper ces trois dernières sections comme suit:

graphe = {(0,0), [0, x, 3], [0, y, 3], [1, x, 2], [2.5, x, 2], [-3, x, 3]}

Cela raccourcit un peu les choses d'avant

Méthode 3

Essayons de faire autrement.

y = 0, 0≤x≤3

x = 0, 0 ≤y≤3
y = x, 3≤x≤5
y = 2.5x-7.5, 5≤x≤7
y = -3x + 29, 7≤x≤8
y = -3x + 29, 8≤x≤9
y = -3x + 29, 9≤x≤10
Ici nous l'avons en termes algébriques purs. Encore une fois, si les points eux-mêmes importent peu et que seul le graphique le permet, nous pouvons regrouper les trois derniers éléments.

y = 0, 0≤x≤3

x = 0, 0≤y≤3
y = x, 3≤x≤5
y = 2.5x-7.5, 5≤x≤7
y = -3x + 29, 7≤x≤10
Maintenant, quelle méthode choisir? dépend de vos capacités. Peut-être que vous êtes génial avec les mathématiques et les graphiques, alors vous choisissez la dernière option. Peut-être que vous êtes bon en navigation, alors vous choisissez la deuxième option. Dans le domaine des ordinateurs, cependant, vous effectuez de nombreux types de tâches et la capacité de l'ordinateur ne change pas vraiment. Par conséquent, les algorithmes sont optimisés pour les tâches qu'ils accomplissent.

Un autre point important à noter est que chaque méthode repose sur une clé. Chaque ensemble d'instructions est inutile, sauf si vous savez quoi faire avec eux. Si vous ne savez pas que vous êtes censé tracer chaque point et relier les points, le premier ensemble de points ne veut rien dire. Si vous ne savez pas ce que chaque variable signifie dans la seconde méthode, vous ne saurez pas comment les appliquer, tout comme la clé d'un chiffrement. Cette clé fait également partie intégrante de l'utilisation des algorithmes, et souvent, cette clé est trouvée dans la communauté ou via une "norme".

Compression de fichiers

Lorsque vous téléchargez un fichier .zip, vous en extrayez le contenu. vous pouvez utiliser tout ce qui est dedans. De nos jours, la plupart des systèmes d'exploitation peuvent plonger dans des fichiers .zip comme s'ils étaient des dossiers normaux, en faisant tout en arrière-plan. Sur ma machine Windows 95 il y a plus de dix ans, j'ai dû tout extraire manuellement avant de pouvoir voir autre chose que les noms de fichiers à l'intérieur. En effet, ce qui était stocké sur le disque sous forme de fichier .zip n'était pas utilisable. Pensez à un canapé-lit. Lorsque vous souhaitez l'utiliser comme lit, vous devez retirer les coussins et les déplier, ce qui prend plus de place. Si vous n'en avez pas besoin, ou si vous voulez le transporter, vous pouvez le replier.

Les algorithmes de compression sont ajustés et optimisés spécifiquement pour les types de fichiers auxquels ils sont destinés. Les formats audio, par exemple, utilisent chacun une manière différente de stocker des données qui, lorsqu'elles sont décodées par le codec audio, donnent un fichier sonore similaire à la forme d'onde originale. Pour plus d'informations sur ces différences, consultez notre article précédent, Quelles sont les différences entre tous ces formats audio? Les formats audio sans perte et les fichiers .zip ont un point commun: ils donnent tous deux les données originales dans leur forme exacte après le processus de décompression. Les codecs audio avec perte utilisent d'autres moyens pour économiser de l'espace disque, tels que les fréquences de rognage qui ne peuvent pas être entendues par les oreilles humaines et lisser la forme d'onde dans les sections pour se débarrasser de certains détails. En fin de compte, bien que nous ne puissions pas vraiment entendre la différence entre une piste MP3 et une piste CD, il y a certainement un déficit d'information dans le premier.

Data Encryption

Des algorithmes sont également utilisés pour sécuriser les données ou la communication lignes. Au lieu de stocker des données de manière à utiliser moins d'espace disque, elles sont stockées d'une manière indétectable par d'autres programmes. Si quelqu'un vole votre disque dur et commence à le scanner, il peut ramasser des données même lorsque vous supprimez des fichiers car les données elles-mêmes sont toujours là, même si l'emplacement de transfert vers lui est parti. Lorsque les données sont chiffrées, tout ce qui est stocké ne ressemble pas à ce qu'il est. Il semble généralement aléatoire, comme si la fragmentation s'était accumulée au fil du temps. Vous pouvez également stocker des données et les faire apparaître comme un autre type de fichier. Les fichiers image et les fichiers musicaux sont bons pour cela, car ils peuvent être assez volumineux sans attirer l'attention, par exemple. Tout cela est fait en utilisant des algorithmes mathématiques, qui prennent une sorte d'entrée et la convertissent en un autre type de sortie très spécifique. Pour plus d'informations sur le fonctionnement du chiffrement, consultez HTG Explications: Qu'est-ce que le chiffrement et comment ça marche?

Les algorithmes sont des outils mathématiques qui fournissent une variété d'utilisations en informatique. Ils travaillent pour fournir un chemin entre un point de départ et un point final d'une manière cohérente, et fournissent les instructions pour le suivre. En savoir plus que ce que nous avons souligné? Partagez vos explications dans les commentaires!



Comment créer les icônes d'applications sur l'écran d'accueil Apple Watch All the Same Size

Comment créer les icônes d'applications sur l'écran d'accueil Apple Watch All the Same Size

L'écran d'accueil de l'Apple Watch est une grande grille fluide d'icônes d'applications. Lorsque vous les déplacez, les icônes sur le bord extérieur deviennent plus petites que les icônes au milieu. Cela peut rendre difficile d'appuyer sur l'icône que vous voulez. Cependant, ceci est facile à résoudre.

(how-to)

Comment apprivoiser (et améliorer) la fonction de correction automatique de l'iPhone

Comment apprivoiser (et améliorer) la fonction de correction automatique de l'iPhone

La correction automatique est un outil très pratique pour les moments où vous essayez l'orthographe d'un mot complexe ou transposez les lettres simplement mais les erreurs de correction automatique peuvent être extrêmement frustrantes et le système n'est pas sans lacunes. Lisez la suite pendant que nous vous montrons comment mettre en forme le système de correction automatique de votre iPhone (et lui enseigner un nouveau truc ou deux en même temps).

(how-to)