Structura de date de coadă este o structură de date foarte cunoscută, listele din Python adaugă de obicei elementele la sfârșitul listei Python. Pentru implementarea unei structuri de date de coadă, este esențial să poți elimina elementul din față dintr-o listă. Să discutăm despre modalitățile de eliminare a primului element al listei.
Metoda 1: Eliminați elemente din liste în Python folosind pop()
Această metodă pop(), adică elimină și tipărește ithelement din listă. Această metodă este folosită mai ales printre celelalte opțiuni disponibile pentru a efectua această sarcină. Aceasta modifică lista originală.
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))> |
>
>
Ieșire:
Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>
Metoda 2: Eliminați elemente din liste în Python folosind del list[]
Aceasta este doar metoda alternativă de a efectua ștergerea frontală, acest operator del efectuează și eliminarea elementelor listei în loc și scade dimensiunea listei cu 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))> |
>
>
Ieșire:
Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>
Metoda 3: Eliminați elemente din liste în Python folosind Slicing
Tăiere Python este o altă abordare prin care această problemă poate fi rezolvată, putem tăia lista de la al doilea element la ultimul și o putem atribui listei goale. Acest lucru nu face conversia in loc ca în cazul celor două metode de mai sus.
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))> |
>
>
Ieșire:
Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>
Metoda 4: Eliminați elemente din liste în Python folosind despre ce() + popleft()
Aceasta este o metodă mai puțin cunoscută pentru a realiza această sarcină specială, conversia listei în deque și apoi efectuând pop stânga, elimină elementul din partea din față a listei.
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)))> |
>
>
Ieșire:
Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>
Metoda 5: Eliminați elemente din liste în Python folosind remove()
The elimina() funcția vă permite să eliminați prima instanță a unei valori specificate din listă. Aceasta poate fi folosită pentru a elimina elementul de top al listei. Alegeți primul membru din listă și trimiteți-l la funcția 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))> |
>
>
Ieșire:
Madhubala
Original list is : [1, 4, 3, 6, 7, 10] Modified list is : [4, 3, 6, 7, 10]>
Metoda: 6 folosind înțelegerea listei
algoritm pas cu pas pentru implementarea abordării
- O listă test_list
- Inițializați o listă goală new_list
- Iterați peste elementele din lista_test începând de la al doilea element:
A. Adăugați elementul curent la new_list - Reveniți new_list
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))> |
>
>Ieșire
Modified list is : [4, 3, 6, 7]>
Complexitatea timpului:
Complexitatea de timp a acestei abordări este O(n), unde n este numărul de elemente din lista de intrare list_test.
Acest lucru se datorează faptului că algoritmul iterează peste fiecare element din listă o dată, cu excepția primului element, care este omis.
Spatiu auxiliar:
Complexitatea spațiului auxiliar al acestei abordări este O(n), unde n este numărul de elemente din lista de intrare list_test.
Acest lucru se datorează faptului că algoritmul creează o nouă listă new_list pentru a stoca versiunea modificată a listei de intrare, care ar putea avea același număr de elemente ca și test_list.
Folosind numpy.delete():
- Importați biblioteca numpy
- Creați o matrice numpy din lista de modificat
- Utilizați funcția numpy.delete() pentru a elimina primul element al matricei
- Convertiți matricea numpy modificată înapoi într-o listă
- Tipăriți listele originale și modificate
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))> |
>
>
Ieșire:
Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>
Complexitatea timpului:
Complexitatea temporală a funcției numpy.delete() este O(n), unde n este numărul de elemente din tabloul numpy. Deoarece convertim, de asemenea, lista într-o matrice numpy și înapoi la o listă, complexitatea generală de timp a acestei abordări este O(n).
Complexitatea spațiului:
Complexitatea spațială a acestei abordări este O(n), unde n este numărul de elemente din lista de intrare list_test. Acest lucru se datorează creării matricei numpy.