La iteración de números se realiza mediante técnicas de bucle en Python. Muchas técnicas en Python facilitan los bucles. A veces debemos realizar el bucle hacia atrás y tener las manos cortas para hacerlo puede resultar bastante útil. Analicemos ciertas formas en que esto se puede hacer en Pitón .
¿Qué es la iteración hacia atrás?
La iteración hacia atrás en Python se refiere al proceso de iterar a través de una secuencia o colección en orden inverso, pasando del último elemento al primero. Esto suele ser útil cuando necesitamos acceder a elementos en el orden opuesto a su disposición original. Python proporciona varios mecanismos para la iteración hacia atrás, como el uso de indexación negativa o el empleo de funciones integradas como reversed()> .
Iteración hacia atrás en Python
Hay varios métodos de iteración hacia atrás en Python, aquí explicamos algunos métodos de uso general que usamos para la iteración hacia atrás en Python y que se detallan a continuación.
- Usando el método invertido ()
- Usando rango (N, -1, -1)
- Usando la sintaxis de corte
- Usando el bucle Mientras
- Usando la función join()
Usando invertido() Método
La forma más sencilla de realizar esto es utilizar la función invertida para el bucle for y la iteración comenzará a ocurrir desde la parte posterior que el conteo convencional.
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>=> ' '>)> |
>
>
Producción:
The reversed numbers are : 6 5 4 3 2 1 0>
Complejidad del tiempo: O(N) donde N es el valor de N
Espacio auxiliar: O(1) como espacio constante se utiliza para la inicialización y la impresión.
Usando rango (N, -1, -1)
Esta tarea particular también se puede realizar usando la función de rango convencional que, si se le proporciona el tercer argumento, realiza el salto y el segundo argumento se usa para comenzar desde atrás.
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>=> ' '>)> |
>
>
Producción:
The reversed numbers are : 6 5 4 3 2 1 0>
Complejidad del tiempo: EN)
Espacio auxiliar: O(1)
gigabyte vs megabyte
Usando la sintaxis de corte
Esta tarea particular también se puede realizar utilizando la sintaxis de segmento que se utiliza para invertir la lista. Lo usamos para invertir la clase de rango en el bucle for y luego realizamos la iteración hacia atrás.
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>=>' '>)> |
>
>
Producción:
The reversed numbers are : 6 5 4 3 2 1 0>
Usando el bucle Mientras
Aquí el código demuestra la iteración hacia atrás en Python, comenzando desde el número inicializado `N` (6) e imprimiendo los números en orden inverso hasta 0 usando un bucle while.
Python3
# Initializing number from which> # iteration begins> N>=> 6> print>(>'The reversed numbers are : '>, end>=>'')> while>(N>>=> 0>):> >print>(N, end>=>' '>)> >N>->=> 1> |
>
>
Producción:
The reversed numbers are : 6 5 4 3 2 1 0>
Usando la función join()
Aquí el código realiza una iteración hacia atrás en Python, comenzando desde el número de entrada dadoN>(6). Crea una cadenareversed_str>concatenando los números invertidos deN>0, separados por espacios. El join()> La función se utiliza para convertir el rango invertido de números en una cadena y se imprime el resultado.
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)> |
>
>
Producción:
The reversed numbers are : 6 5 4 3 2 1 0>
Complejidad del tiempo: O (N): donde N es el valor de la entrada dada. El rango invertido se genera en una complejidad de tiempo O(N) y convertir cada número en una cadena usando la función map() requiere una complejidad de tiempo O(N). La función join() también requiere una complejidad de tiempo O(N) para concatenar los números invertidos como una cadena.
Espacio auxiliar: O(N) : donde N es el valor de la entrada dada. El rango invertido de números y la cadena concatenada de números invertidos ocupan espacio O(N) en la memoria.