Iteracja wsteczna w Pythonie

Iteracja liczb odbywa się w Pythonie za pomocą technik pętli. Wiele technik w Pythonie ułatwia tworzenie pętli. Czasami musimy wykonać pętlę wstecz, a posiadanie do tego krótkich rąk może być całkiem przydatne. Omówmy pewne sposoby, w jakie można to zrobić Pyton .

Co to jest iteracja wsteczna?

Iteracja wsteczna w Pythonie odnosi się do procesu iteracji przez sekwencję lub kolekcję w odwrotnej kolejności, przechodząc od ostatniego elementu do pierwszego. Jest to często przydatne, gdy musimy uzyskać dostęp do elementów w kolejności odwrotnej do ich pierwotnego ułożenia. Python udostępnia różne mechanizmy iteracji wstecznej, takie jak korzystanie z indeksowania ujemnego lub korzystanie z wbudowanych funkcji, takich jak reversed()> .

Iteracja wsteczna w Pythonie

Istnieją różne metody iteracji wstecznej w Pythonie. Tutaj wyjaśniamy niektóre ogólnie używane metody, których używamy do iteracji wstecznej w Pythonie. Oto one.

  • Korzystanie z metody odwróconej ().
  • Korzystanie z zakresu (N, -1, -1)
  • Używanie składni plasterka
  • Korzystanie z pętli While
  • Korzystanie z funkcji Join().

Używanie odwróconej() metoda

Najprostszym sposobem wykonania tej operacji jest użycie funkcji odwróconej dla pętli for, a iteracja rozpocznie się od tyłu niż w przypadku konwencjonalnego liczenia.

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

Wyjście:

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

Złożoność czasowa: O(N) gdzie N jest wartością N
Przestrzeń pomocnicza: O(1) jako stała przestrzeń jest używana do inicjalizacji i drukowania.

Korzystanie z zakresu (N, -1, -1)

To konkretne zadanie można również wykonać przy użyciu konwencjonalnej funkcji zakresu, która po podaniu trzeciego argumentu wykonuje pominięcie, a drugi argument służy do rozpoczęcia od tyłu.

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

Wyjście:

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

Złożoność czasowa: NA)
Przestrzeń pomocnicza: O(1)

Używanie składni plasterka

To konkretne zadanie można również wykonać przy użyciu składni plasterka, która służy do odwracania listy. Użyliśmy go do odwrócenia klasy range w pętli for, a następnie wykonaliśmy iterację wstecz.

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

Wyjście:

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

Korzystanie z pętli While

Tutaj kod demonstruje iterację wsteczną w Pythonie, zaczynając od zainicjowanej liczby `N` (6) i wyświetlając liczby w odwrotnej kolejności, aż do 0, używając pętli while.

Python3




# Initializing number from which> # iteration begins> N> => 6> print> (> 'The reversed numbers are : '> , end> => '')> while> (N>> => 0> ):> > print> (N, end> => ' '> )> > N> -> => 1>

Wyjście:

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

Korzystanie z funkcji Join().

Tutaj kod wykonuje iterację wsteczną w Pythonie, zaczynając od podanego numeru wejściowego N> (6). Tworzy ciąg reversed_str> poprzez połączenie odwróconych liczb z N> 0, oddzielone spacjami. The join()> Funkcja służy do konwersji odwróconego zakresu liczb na ciąg znaków, a wynik jest drukowany.

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

Wyjście:

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

Złożoność czasowa: O(N): gdzie N jest wartością danego wejścia. Odwrócony zakres jest generowany w złożoności czasowej O(N), a konwersja każdej liczby na ciąg znaków za pomocą funkcji map() wymaga złożoności czasowej O(N). Funkcja Join() również wymaga złożoności czasowej O(N), aby połączyć odwrócone liczby w ciąg znaków.

Przestrzeń pomocnicza: O(N) : gdzie N jest wartością danego wejścia. Odwrócony zakres liczb i połączony ciąg odwróconych liczb zajmują przestrzeń O(N) w pamięci.