Zpětná iterace v Pythonu

Iterace čísel se provádí technikami smyček v Pythonu. Mnoho technik v Pythonu usnadňuje smyčkování. Někdy jsme povinni provést smyčku pozpátku a mít k tomu krátké ruce může být docela užitečné. Pojďme diskutovat o určitých způsobech, jak to lze provést Krajta .

Co je zpětná iterace?

Zpětná iterace v Pythonu odkazuje na proces opakování sekvence nebo kolekce v opačném pořadí, kdy se pohybuje od posledního prvku k prvnímu. To je často užitečné, když potřebujeme přistupovat k prvkům v opačném pořadí, než je jejich původní uspořádání. Python poskytuje různé mechanismy pro zpětnou iteraci, jako je použití negativního indexování nebo využití vestavěných funkcí jako reversed()> .

Zpětná iterace v Pythonu

V Pythonu existují různé metody zpětné iterace, zde vysvětlujeme některé obecně používané metody, které používáme pro zpětnou iteraci v Pythonu, které následují.

  • Použití metody reversed().
  • Použití rozsahu (N, -1, -1)
  • Použití syntaxe řezu
  • Použití smyčky While
  • Pomocí funkce join().

Použití reversed() Metoda

Nejjednodušší způsob, jak to provést, je použít obrácenou funkci pro smyčku for a iterace začne probíhat ze zadní strany než konvenční počítání.

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> => )>

Výstup:

The reversed numbers are : 6 5 4 3 2 1 0 

Časová složitost: O(N), kde N je hodnota N
Pomocný prostor: O(1) jako konstantní prostor se používá pro inicializaci a tisk.

Použití rozsahu (N, -1, -1)

Tento konkrétní úkol lze také provést pomocí funkce konvenčního rozsahu, která, pokud je poskytnuta se třetím argumentem, provede přeskočení a druhý argument se použije pro začátek 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> => )>

Výstup:

The reversed numbers are : 6 5 4 3 2 1 0 

Časová složitost: NA)
Pomocný prostor: O(1)

Použití syntaxe řezu

Tento konkrétní úkol lze také provést pomocí syntaxe řezu, která se používá pro obrácení seznamu. Použili jsme to pro obrácení třídy rozsahu ve smyčce for a poté jsme provedli zpětnou iteraci.

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> => )>

Výstup:

The reversed numbers are : 6 5 4 3 2 1 0 

Použití smyčky While

Zde kód demonstruje zpětnou iteraci v Pythonu, počínaje inicializovaným číslem `N` (6) a tiskne čísla v opačném pořadí až do 0 pomocí 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ýstup:

The reversed numbers are : 6 5 4 3 2 1 0 

Pomocí funkce join().

Zde kód provádí zpětnou iteraci v Pythonu, počínaje daným vstupním číslem N> (6). Vytváří řetězec reversed_str> zřetězením obrácených čísel z N> 0, oddělené mezerami. The join()> Funkce se používá k převodu obráceného rozsahu čísel na řetězec a výsledek je vytištěn.

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)>

Výstup:

The reversed numbers are : 6 5 4 3 2 1 0 

Časová složitost: O(N): kde N je hodnota daného vstupu. Obrácený rozsah je generován v časové složitosti O(N) a převod každého čísla na řetězec pomocí funkce map() vyžaduje časovou složitost O(N). Funkce join() také vyžaduje časovou složitost O(N) ke zřetězení obrácených čísel jako řetězce.

Pomocný prostor: O(N) : kde N je hodnota daného vstupu. Obrácený rozsah čísel a zřetězený řetězec obrácených čísel zabírají O(N) místo v paměti.