Ce sont à des fins de démonstration uniquement. Il existe de nombreuses implémentations dans la bibliothèque JavaScript Standard qui sont bien meilleures pour des raisons de performance.
Merci pour Thealgorithms: https://github.com/thealgorithms
De Wikipedia: le tri des bulles, parfois appelé tri de naufrage, est un algorithme de tri simple qui passe à plusieurs reprises à travers la liste pour être trié, compare chaque paire d'éléments adjacents et les échange s'ils sont dans le mauvais ordre. Le passage à travers la liste est répété jusqu'à ce qu'aucun swaps ne soit nécessaire, ce qui indique que la liste est triée.
Propriétés
De Wikipedia: le tri d'insertion est un algorithme de tri simple qui construit le tableau (ou liste) trié final un élément à la fois. Il est beaucoup moins efficace sur les grandes listes que les algorithmes plus avancés tels que Quicksort, Heapsort ou Merge Sort.
Propriétés
De Wikipedia: en informatique, le tri de fusion (également communément orthographié Mergesort) est un algorithme de tri à usage général efficace, à usage général. La plupart des implémentations produisent un type stable, ce qui signifie que l'implémentation préserve l'ordre d'entrée d'éléments égaux dans la sortie triée. Mergesort est un algorithme de division et de conquête qui a été inventé par John von Neumann en 1945.
Propriétés
De Wikipedia: Quicksort (parfois appelé type d'échange de partition) est un algorithme de tri efficace, servant de méthode systématique pour placer les éléments d'un tableau dans l'ordre.
Propriétés
De Wikipedia: l'algorithme divise la liste des entrées en deux parties: la subliste des articles déjà triée, qui est construite de gauche à droite à l'avant (à gauche) de la liste, et le subliste des articles restant à tri qui occupent le reste de la liste. Initialement, le subliste trié est vide et le subliste non triée est la liste des entrées entière. L'algorithme se déroule en trouvant l'élément le plus petit (ou le plus grand, selon l'ordre de tri) dans la subliste non triée, l'échangeant (l'échange) avec l'élément non trié le plus à gauche (le mettant dans l'ordre trié) et le déplaçant les limites de subliste d'un élément vers la droite.
Propriétés
De Wikipedia: Shellsort est une généralisation du type d'insertion qui permet l'échange d'articles éloignés. L'idée est d'organiser la liste des éléments afin que, à commencer n'importe où, considérer chaque nième élément donne une liste triée. Une telle liste est censée être triée en H. De manière équivalente, il peut être considéré comme H listes entrelacées, chacune triée individuellement.
Propriétés
Comparaison de la complexité des algorithmes de tri (tri de bulles, tri d'insertion, tri de sélection)
Graphiques de complexité
De Wikipedia: la recherche linéaire ou la recherche séquentielle est une méthode pour trouver une valeur cible dans une liste. Il vérifie séquentiellement chaque élément de la liste pour la valeur cible jusqu'à ce qu'une correspondance soit trouvée ou jusqu'à ce que tous les éléments aient été recherchés. La recherche linéaire passe au pire temps linéaire et fait au plus n comparaisons, où n est la longueur de la liste.
Propriétés
De Wikipedia: la recherche binaire, également connue sous le nom de recherche à demi-intervals ou recherche logarithmique, est un algorithme de recherche qui trouve la position d'une valeur cible dans un tableau trié. Il compare la valeur cible à l'élément moyen du tableau; S'ils sont inégaux, la moitié dans laquelle la cible ne peut pas mentir est éliminée et la recherche continue sur la moitié restante jusqu'à ce qu'elle soit réussie.
Propriétés
De Wikipedia: la recherche de saut ou la recherche de blocs fait référence à un algorithme de recherche pour les listes commandées. Il fonctionne en vérifiant d'abord tous les éléments lkm, où { displaystyle k in mathbb {n}} k in mathbb {n} et m est la taille du bloc, jusqu'à ce qu'un élément soit trouvé plus grand que la touche de recherche. Pour trouver la position exacte de la clé de recherche dans la liste, une recherche linéaire est effectuée sur le subliste l [(k-1) m, km].
Propriétés
En cryptographie, un chiffre de César , également connu sous le nom de chiffre de César, le chiffre de décalage, le code de César ou le décalage de César, est l'une des techniques de cryptage les plus simples et les plus connues.
Il s'agit d'un type de chiffre de substitution dans lequel chaque lettre dans le texte clair est remplacée par une lettre un nombre fixe de positions dans l'alphabet. Par exemple, avec un décalage gauche de 3, D serait remplacé par A, E deviendrait B, etc.
La méthode porte le nom de Julius Caesar , qui l'a utilisé dans sa correspondance privée.
L'étape de chiffrement effectuée par un chiffre de César est souvent incorporée dans le cadre de schémas plus complexes, tels que le chiffre de Vigenère, et a toujours une application moderne dans le système ROT13. Comme pour tous les chiffres de substitution monomabet, le chiffre de Caesar est facilement brisé et dans la pratique moderne n'offre essentiellement aucune sécurité de communication.
Le chiffre de Vigenère est une méthode de cryptage du texte alphabétique en utilisant une série de chiffres de Caesar entrelacés basés sur les lettres d'un mot-clé. C'est une forme de substitution polyalphabétique .
Le chiffre de Vigenère a été réinventé à plusieurs reprises. La méthode a été initialement décrite par Giovan Battista Bellaso dans son livre de 1553 La Cifra del. Sig. Giovan Battista Bellaso; Cependant, le schéma a ensuite été mal attribué à Blaise de Vigenère au 19e siècle, et est maintenant largement connu sous le nom de "Cipher Vigenère".
Bien que le chiffre soit facile à comprendre et à mettre en œuvre, pendant trois siècles, il a résisté à toutes les tentatives de le casser; Cela lui a valu la description le Chiffre indéchiffable (français pour «le chiffre indéchiffrable»). Beaucoup de gens ont essayé de mettre en œuvre des schémas de chiffrement qui sont essentiellement des chiffres de Vigenère. Friedrich Kasiski a été le premier à publier une méthode générale pour déchiffrer un chiffre de Vigenère en 1863.
Dans la cryptographie, un chiffre de transposition est une méthode de cryptage par laquelle les positions détenues par des unités de texte en clair (qui sont généralement des caractères ou des groupes de caractères) sont décalés selon un système régulier, de sorte que le texte chiffré constitue une permutation du texte clair. C'est-à-dire que l'ordre des unités est modifié (le texte en clair est réorganisé).
Mathématiquement, une fonction bijective est utilisée sur les positions des caractères pour crypter et une fonction inverse à décrypter.
L'algorithme de Luhn ou la formule Luhn, également connu sous le nom de "Modulus 10" ou "MOD 10", est une simple formule de somme de contrôle utilisée pour valider une variété de numéros d'identification, tels que les numéros de carte de crédit, les numéros d'identification IMEI, les numéros de sécurité sociale des fournisseurs nationaux. Il a été créé par le scientifique IBM Hans Peter Luhn et décrit dans le brevet américain n ° 2 950 048, déposé le 6 janvier 1954 et accordé le 23 août 1960.