Iterácia čísel sa vykonáva technikami cyklovania v Pythone. Mnoho techník v Pythone uľahčuje slučkovanie. Niekedy sa od nás vyžaduje, aby sme opakovali slučku a krátke ruky na to môžu byť celkom užitočné. Poďme diskutovať o určitých spôsoboch, ako to možno urobiť Python .
Čo je to spätná iterácia?
Spätná iterácia v Pythone sa týka procesu iterácie cez sekvenciu alebo kolekciu v opačnom poradí, pričom sa pohybuje od posledného prvku k prvému. To je často užitočné, keď potrebujeme pristupovať k prvkom v opačnom poradí, ako je ich pôvodné usporiadanie. Python poskytuje rôzne mechanizmy pre spätnú iteráciu, ako je použitie negatívneho indexovania alebo využitie vstavaných funkcií ako reversed()> .
Spätná iterácia v Pythone
V Pythone existujú rôzne metódy spätnej iterácie, tu vysvetľujeme niektoré všeobecne používané metódy, ktoré používame na spätnú iteráciu v Pythone, ktoré nasledujú.
- Použitie reverznej () metódy
- Použitie rozsahu (N, -1, -1)
- Použitie syntaxe rezu
- Použitie slučky While
- Pomocou funkcie join().
Použitie reverse() Metóda
Najjednoduchší spôsob, ako to urobiť, je použiť obrátenú funkciu pre cyklus for a iterácia sa začne vyskytovať zo zadnej strany ako konvenčné počítanie.
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>=> ' '>)> |
vytváranie tabuliek v latexe
>
>
Výkon:
The reversed numbers are : 6 5 4 3 2 1 0>
Časová zložitosť: O(N), kde N je hodnota N
Pomocný priestor: O(1) ako konštantný priestor sa používa na inicializáciu a tlač.
Použitie rozsahu (N, -1, -1)
Túto konkrétnu úlohu možno vykonať aj pomocou funkcie konvenčného rozsahu, ktorá, ak je poskytnutá s tretím argumentom, vykoná preskočenie a druhý argument sa použije na začatie odzadu.
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>=> ' '>)> |
koľko núl v 1 miliarde
>
>
Výkon:
The reversed numbers are : 6 5 4 3 2 1 0>
Časová zložitosť: O(N)
Pomocný priestor: O(1)
Použitie syntaxe rezu
Túto konkrétnu úlohu možno vykonať aj pomocou syntaxe rezu, ktorá sa používa na obrátenie zoznamu. Použili sme ho na obrátenie triedy rozsahu v slučke for a potom sme vykonali spätnú iteráciu.
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>=>' '>)> |
>
podreťazec reťazec java
>
Výkon:
The reversed numbers are : 6 5 4 3 2 1 0>
Použitie slučky While
Tu kód demonštruje spätnú iteráciu v Pythone, počnúc inicializovaným číslom `N` (6) a tlačenie čísel v opačnom poradí až po 0 pomocou cyklu while.
Python3
# Initializing number from which> # iteration begins> N>=> 6> print>(>'The reversed numbers are : '>, end>=>'')> while>(N>>=> 0>):> >print>(N, end>=>' '>)> >N>->=> 1> |
>
>
Výkon:
The reversed numbers are : 6 5 4 3 2 1 0>
Pomocou funkcie join().
Tu kód vykoná spätnú iteráciu v Pythone, začínajúc od daného vstupného číslaN>(6). Vytvára reťazecreversed_str>zreťazením obrátených čísel zN>0 oddelené medzerami. The join()> funkcia sa používa na konverziu obráteného rozsahu čísel na reťazec a výsledok sa vytlačí.
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)> |
príkaz java if
>
>
Výkon:
The reversed numbers are : 6 5 4 3 2 1 0>
Časová zložitosť: O(N): kde N je hodnota daného vstupu. Obrátený rozsah sa generuje v časovej zložitosti O(N) a prevod každého čísla na reťazec pomocou funkcie map() vyžaduje časovú zložitosť O(N). Funkcia join() tiež vyžaduje časovú zložitosť O(N) na zreťazenie obrátených čísel ako reťazec.
Pomocný priestor: O(N) : kde N je hodnota daného vstupu. Obrátený rozsah čísel a zreťazený reťazec obrátených čísel zaberajú O(N) miesto v pamäti.