Itération arrière en Python
L'itération des nombres se fait par des techniques de bouclage en Python. De nombreuses techniques en Python facilitent le bouclage. Parfois, nous devons effectuer le bouclage en arrière et avoir des mains courtes pour le faire peut être très utile. Discutons de certaines façons dont cela peut être fait dans Python .
Qu’est-ce que l’itération arrière ?
L'itération arrière en Python fait référence au processus d'itération dans une séquence ou une collection dans l'ordre inverse, en passant du dernier élément au premier. Ceci est souvent utile lorsque nous devons accéder à des éléments dans l’ordre inverse de leur disposition d’origine. Python fournit divers mécanismes pour l'itération vers l'arrière, tels que l'utilisation d'une indexation négative ou l'emploi de fonctions intégrées telles que reversed()> .
Itération arrière en Python
Il existe différentes méthodes d'itération arrière en Python, nous expliquons ici certaines méthodes généralement utilisées que nous utilisons pour l'itération arrière en Python et qui suivent.
- Utilisation de la méthode inversée()
- Utilisation de la plage (N, -1, -1)
- Utilisation de la syntaxe des tranches
- Utilisation de la boucle While
- Utilisation de la fonction join()
Utiliser inversé() Méthode
Le moyen le plus simple d'y parvenir est d'utiliser la fonction inversée pour la boucle for et l'itération commencera à se produire depuis l'arrière du comptage conventionnel.
Python3
# Initializing number from which> # iteration begins> N> => 6> # using reversed() to perform the back iteration> print> (> 'The reversed numbers are : '> , end> => '')> for> num> in> reversed> (> range> (N> +> 1> )) :> > print> (num, end> => ' '> )> |
Sortir:
The reversed numbers are : 6 5 4 3 2 1 0
Complexité temporelle : O(N) où N est la valeur de N
Espace auxiliaire : O(1) comme espace constant est utilisé pour l'initialisation et l'impression.
Utilisation de la plage (N, -1, -1)
Cette tâche particulière peut également être effectuée à l'aide de la fonction de plage conventionnelle qui, si elle est fournie avec le troisième argument, effectue le saut et le deuxième argument est utilisé pour repartir en arrière.
Python3
# Initializing number from which> # iteration begins> N> => 6> # without using reversed() to perform the back iteration> print> (> 'The reversed numbers are : '> , end> => '')> for> num> in> range> (N,> -> 1> ,> -> 1> ) :> > print> (num, end> => ' '> )> |
Sortir:
The reversed numbers are : 6 5 4 3 2 1 0
Complexité temporelle : SUR)
Espace auxiliaire : O(1)
Utilisation de la syntaxe des tranches
Cette tâche particulière peut également être effectuée en utilisant la syntaxe slice qui est utilisée pour inverser la liste. Nous l'avons utilisé pour inverser la classe range dans la boucle for, puis nous avons effectué l'itération vers l'arrière.
Python3
# # Initializing number from which> # # iteration begins> N> => 6> # Using slice syntax perform the backward iteration> k> => range> (N> +> 1> )[::> -> 1> ]> print> (> 'The reversed numbers are : '> ,end> => '')> for> i> in> k:> > print> (i, end> => ' '> )> |
Sortir:
The reversed numbers are : 6 5 4 3 2 1 0
Utilisation de la boucle While
Ici, le code démontre l'itération vers l'arrière en Python, en commençant par le nombre initialisé « N » (6) et en imprimant les nombres dans l'ordre inverse jusqu'à 0 à l'aide d'une boucle while.
Python3
# Initializing number from which> # iteration begins> N> => 6> print> (> 'The reversed numbers are : '> , end> => '')> while> (N>> => 0> ):> > print> (N, end> => ' '> )> > N> -> => 1> |
Sortir:
The reversed numbers are : 6 5 4 3 2 1 0
Utilisation de la fonction join()
Ici, le code effectue une itération vers l'arrière en Python, à partir du numéro d'entrée donné N> (6). Cela crée une chaîne reversed_str> en concaténant les nombres inversés de N> 0, séparés par des espaces. Le join()> La fonction est utilisée pour convertir la plage inversée de nombres en une chaîne et le résultat est imprimé.
Python3
# Given input> N> => 6> # Concatenating reversed numbers as a string using join() function> reversed_str> => ' '> .join(> map> (> str> ,> reversed> (> range> (N> +> 1> ))))> # Printing the reversed numbers as a string> print> (> 'The reversed numbers are :'> , reversed_str)> |
Sortir:
The reversed numbers are : 6 5 4 3 2 1 0
Complexité temporelle : O(N) : où N est la valeur de l’entrée donnée. La plage inversée est générée en complexité temporelle O(N) et la conversion de chaque nombre en chaîne à l'aide de la fonction map() prend une complexité temporelle O(N). La fonction join() prend également une complexité temporelle O(N) pour concaténer les nombres inversés sous forme de chaîne.
Espace auxiliaire : O(N) : où N est la valeur de l’entrée donnée. La plage de nombres inversée et la chaîne concaténée de nombres inversés occupent un espace O(N) en mémoire.