Compression de cordes en python

Compression de cordes en python
Les systèmes de gestion de base de données en mémoire (IMDBMS) peuvent être utilisés pour comprimer les URL et les messages, entre autres. Jetons un coup d'œil à la compression des cordes plus en profondeur. La compression de cordes en utilisant le langage de programmation Python sera le sujet de discussion dans cet article.

Dans Python, la compression des cordes fait référence au processus de raccourcissement d'une grande chaîne. L'intention originale de la chaîne ne sera jamais modifiée en la compressant. Nous utiliserons la compression des chaînes pour rendre cette URL plus courte. Bien que la longueur de l'URL change lorsqu'elle est comprimée, l'URL que vous obtenez après raccourcissement nous conduira au même visuel si vous le mettez dans Google.

Signification de la compression des cordes en python

Dans Python, l'objectif fondamental de la compression des cordes est d'économiser autant de mémoire que possible. En effet. De nos jours, tout le monde s'attend à une rapidité dans le travail qu'ils terminent. La compression ou la chaîne de données prendra moins de temps à traiter et fournira la sortie dès que possible.

Il a également des opérations de lecture rapide, ce qui signifie que si un texte est compressé, l'utilisateur devra le lire en moins de temps. En conséquence, la compression des chaînes enregistrera la mémoire et le temps de traitement, ainsi que le temps nécessaire à un utilisateur pour lire un message.

Algorithme pour la compression de chaîne en python

Nous venons de passer en revue l'algorithme pour comprimer une longueur spécifique de la chaîne d'entrée. La chaîne doit être comprimée de sorte que la répétition continue des caractères est remplacée par le caractère, puis le nombre de répétitions continues est suivie par le caractère.

  • Choisissez le premier caractère dans la chaîne donnée (STR).
  • À la chaîne compressée, ajoutez-la.
  • Ajoutez le total à la chaîne compactée si le nombre d'apparences consécutives du caractère est supérieure à 1. Choisissez le caractère suivant et répétez les procédures ci-dessus jusqu'à ce que STR soit terminé.

Exemple 1: Compressez une chaîne en utilisant un algorithme de compression de chaîne dans Python

Nous avons utilisé l'algorithme spécifié ci-dessus dans l'exemple de code donné. La chaîne donnée doit être comprimée en appliquant l'algorithme. Le codage de longueur d'exécution est le terme pour ce type de compression. Pour une meilleure compréhension, définissons l'algorithme de compression des chaînes dans le code.

Ici, nous avons une fonction qui est définie comme «Compress.«Nous avons passé une variable« MyString »comme argument. Nous avons construit un «index» variable à l'intérieur de la fonction, qui est initialement conservé à zéro. Cette variable «index» prendra la valeur d'index de la chaîne donnée à comprimer. Après cela, nous avons initialisé une chaîne vide et l'avons attribuée à la variable «compresss_string». Ensuite, prenez la longueur de la chaîne en invoquant la fonction de longueur sur un «MyString» dans la variable «str_len."

Maintenant, nous avons un état de temps où le nombre est égal à «1» si la longueur de la chaîne n'est pas adaptée à la position d'index de la chaîne. Encore une fois, nous avons un peu de condition pour la répétition des personnages à l'intérieur de la chaîne compressée. En utilisant la condition IF-Else, si le caractère est trouvé répété consécutivement, alors le nombre sera incrémenté à la chaîne compressée. Sinon, nous ne compterons pas un seul caractère dans la chaîne.

La chaîne est définie et initialisée à la fin du code avant l'expression d'impression. Dans l'expression de l'impression, nous avons imprimé la chaîne compressée.

La sortie de la chaîne donnée est comprimée comme suit.

Exemple 2: Compressez une chaîne en utilisant une bibliothèque Itertools dans Python

Le module Python Ipertools vous permet de faire du vélo sur les structures de données. Ce type de structure de données est également appelé itérable. Ce module offre un moyen d'économiser de la mémoire et rapide de créer l'algèbre d'itérateur.

En utilisant les Itertools dans le code suivant, nous avons importé «Take While» et «Drop While."Ceux-ci sont définis dans le code. Après cela, nous avons défini une fonction qui est représentée comme «compression."La fonction est appelée avec la chaîne qui doit être compressée comme argument.

Comme nous avons une condition «IF», ​​la ligne de retour »sinon String» est la même que la condition gardienne dans le premier algorithme. Le raisonnement est effectué via la valeur de retour Else. La boucle est utilisée comme une prise. Cela va parcourir les caractères dans l'argument de la chaîne jusqu'à ce que le caractère équivaut au caractère initial de l'argument de la chaîne (String [0]).

Dans cette chaîne, le générateur de liste est la fonction suivante. Le générateur ne renvoie qu'une chose à la fois, tandis que la fonction de liste les récupère tous. Après cela, la queue est fabriquée avec la fonction Drop Who, ce qui réduit le nombre d'éléments pris par la «tête."La fonction de jointure rejoint les éléments de la liste dans une chaîne, qui est fournie comme un nouveau paramètre au cycle d'itération. L'itération s'arrêtera lorsque tous les caractères de la chaîne ont été supprimés et remplacés par une chaîne vide.

La sortie que nous avons obtenue du module Itertools est la suivante.

Exemple 3: Compressez une chaîne en utilisant une boucle simple dans Python

Ici, nous utilisons un cycle de boucle simple pour comprimer la chaîne en python. Nous avons créé une chaîne vide dans la variable «String1». La nouvelle chaîne est également créée comme «String2», qui a une chaîne. Ensuite, nous avons un décompte qui est égal à «1». La boucle FOR est utilisée, qui a la fonction de plage pour la chaîne donnée. Si la condition est pour les caractères répétés en continu dans la chaîne sera incrémenté par le décompte. Sinon, la clause ELSE sera exécutée.

La sortie générée à partir du code ci-dessus est la suivante.

Conclusion

J'espère que vous avez beaucoup appris à partir de l'article complet de compression de chaîne Python d'aujourd'hui. Nous avons parcouru pourquoi la compression des cordes est nécessaire pour la vraie vie. Nous avons également acquis une compréhension approfondie de l'algorithme à utiliser, ainsi qu'une déclaration claire du code avec et sans la bibliothèque.