logo

Python – Odstráňte prvý prvok zoznamu

Dátová štruktúra frontu je veľmi známa dátová štruktúra, zoznamy v Pythone zvyčajne pripájajú prvky na koniec zoznamu Python. Na implementáciu dátovej štruktúry frontu je nevyhnutné, aby bolo možné odstrániť predný prvok zo zoznamu. Poďme diskutovať o spôsoboch odstránenia prvého prvku zoznamu.

Metóda 1: Odstráňte prvky zo zoznamov v Pythone pomocou pop()

Táto metóda pop() , t.j. odstráni a vytlačí ithprvok zo zoznamu. Táto metóda sa väčšinou používa medzi ostatnými dostupnými možnosťami na vykonanie tejto úlohy. Tým sa zmení pôvodný zoznam.



Python3








# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using pop(0) to perform removal> test_list.pop(>0>)> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Výkon :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Metóda 2: Odstráňte prvky zo zoznamov v Pythone pomocou del list[]

Toto je len alternatívna metóda na vykonanie predného vymazania, tento operátor del tiež vykonáva odstránenie prvkov zoznamu na mieste a zmenšuje veľkosť zoznamu o 1.

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using del list[0] to perform removal> del> test_list[>0>]> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Výkon :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Metóda 3: Odstráňte prvky zo zoznamov v Pythone pomocou Slicingu

Python Slicing je ďalší prístup, ktorým možno tento problém vyriešiť, môžeme rozrezať zoznam od druhého prvku po posledný a priradiť ho k prázdnemu zoznamu. Toto nevykonáva konverziu na mieste ako v prípade vyššie uvedených dvoch metód.

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using slicing to perform removal> res>=> test_list[>1>:]> # Printing modified list> print>(>'Modified list is : '> +> str>(res))>

>

>

Výkon :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Metóda 4: Odstráňte prvky zo zoznamov v Pythone pomocou o čom() + popleft()

Toto je menej známa metóda na dosiahnutie tejto konkrétnej úlohy, konvertovanie zoznamu na deque a potom vykonanie pop vľavo, odstráni prvok z prednej časti zoznamu.

Python3




from> collections>import> deque> # initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using deque() + popleft() to> # perform removal> res>=> deque(test_list)> res.popleft()> # Printing modified list> print>(>'Modified list is : '> +> str>(>list>(res)))>

>

>

Výkon :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Metóda 5: Odstráňte prvky zo zoznamov v Pythone pomocou remove()

The odstrániť () funkcia umožňuje odstrániť prvý výskyt zadanej hodnoty zo zoznamu. Toto možno použiť na odstránenie hlavnej položky zoznamu. Vyberte prvého člena zo zoznamu a vložte ho do funkcie remove().

Python3




test_list>=> [>1>,>4>,>3>,>6>,>7>,>10>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # Remove first element from list in python> test_list.remove(test_list[>0>])> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Výkon :

c formátovaný reťazec
Original list is : [1, 4, 3, 6, 7, 10] Modified list is : [4, 3, 6, 7, 10]>

Metóda:6 pomocou porozumenia zoznamu

krok za krokom algoritmus na implementáciu prístupu

  1. Zoznam test_list
  2. Inicializujte prázdny zoznam new_list
  3. Iterujte prvky v test_liste od druhého prvku:
    a. Pripojte aktuálny prvok do new_list
  4. Vrátiť nový_zoznam

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # remove first element using list comprehension> new_list>=> [x>for> x>in> test_list[>1>:]]> # print the new list> print>(>'Modified list is : '> +> str>(new_list))>

>

>

Výkon

Modified list is : [4, 3, 6, 7]>

Časová zložitosť:

Časová zložitosť tohto prístupu je O(n), kde n je počet prvkov vo vstupnom zozname test_list.
Je to preto, že algoritmus iteruje každý prvok v zozname raz, s výnimkou prvého prvku, ktorý sa preskočí.
Pomocný priestor:

Pomocná priestorová zložitosť tohto prístupu je O(n), kde n je počet prvkov vo vstupnom zozname test_list.
Je to preto, že algoritmus vytvorí nový zoznam new_list na uloženie upravenej verzie vstupného zoznamu, ktorý by potenciálne mohol mať rovnaký počet prvkov ako test_list.

Pomocou numpy.delete():

  1. Importujte knižnicu numpy
  2. Vytvorte numpy pole zo zoznamu, ktorý chcete upraviť
  3. Na odstránenie prvého prvku poľa použite funkciu numpy.delete().
  4. Skonvertujte upravené numpy pole späť na zoznam
  5. Vytlačte pôvodný a upravený zoznam

Python3




import> numpy as np> # initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # Convert list to numpy array> np_array>=> np.array(test_list)> # Use numpy.delete() to remove first element> modified_np_array>=> np.delete(np_array,>0>)> # Convert numpy array back to list> modified_list>=> modified_np_array.tolist()> # Printing modified list> print>(>'Modified list is : '> +> str>(modified_list))>

>

>

Výkon:

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Časová zložitosť:
Časová zložitosť funkcie numpy.delete() je O(n), kde n je počet prvkov v poli numpy. Keďže zoznam tiež konvertujeme na numpy pole a späť na zoznam, celková časová zložitosť tohto prístupu je O(n).

Zložitosť priestoru:
Priestorová zložitosť tohto prístupu je O(n), kde n je počet prvkov vo vstupnom zozname test_list. Je to spôsobené vytvorením numpy poľa.