Hej :)
Jak tworzy się listę dwukierunkową w Pythonie? Każdy element ma zawierać imię i wiek. Kompletnie nie wiem jak się za to zabrać.
Program ma zawierac funkcje: dodaj na początku, w środku i na n-tej pozycji oraz wyświetlić listę, znaleźć najstarszego człowieka.
Proszę, pomóżcie.
0
0
a KONKRETNIE to czego nie potrafisz? Bo jeśli liczysz na gotowca to podaj jaki masz budżet na to przeznaczony. W przeciwnym wypadku najpierw sam coś zrób a tutaj pytaj o KONKRETY
0
Mam coś takiego:
class Node:
def __init__(self, data=None, next=None, prev=None):
self.data = data
self.next = next
self.prev = prev
def __str__(self):
return str(self.data)
class TwindirectionalList:
def insert_head(pair, data):
if pair[0]:
node = Node(data, next=pair[0])
pair[0].prev = node
pair[0] = node
else: # lista była pusta
pair[0] = pair[1] = Node(data)
def insert_tail(pair, data):
if pair[1]:
node = Node(data, prev=pair[1])
pair[1].next = node
pair[1] = node
else: # lista była pusta
pair[0] = pair[1] = Node(data)
def print_dlist(pair):
node = pair[0] # head
print ("Double list elements:")
while node:
print (node)
node = node.next
Ale wydaje mi się to bez sensu. Nie liczę na gotowca, tylko na jakieś podpowiedzi. Bo prawdę mówiąc, nie wiem jak zacząć.
0
Tak Nie Dasz rady, IMO, opakuj node
jeszcze jedna klasa, Zobacz zreszta na moim githubie: https://github.com/lion137/Python-Data-Structures?files=1
1
from collections import deque
I masz do użycia wydajną wersję listy dwukiwrunkowej.