Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Queue:
- def __init__(self):
- self.queue = []
- def is_empty(self):
- return len(self.queue) == 0
- def enqueue(self, item):
- self.queue.append(item)
- def dequeue(self):
- if not self.is_empty():
- return self.queue.pop(0)
- def peek(self):
- if not self.is_empty():
- return self.queue[0]
- class Stack:
- def __init__(self):
- self.stack = []
- def size(self):
- return len(self.stack)
- def is_empty(self):
- return self.size() == 0
- def push(self, item):
- self.stack.append(item)
- def pop(self):
- if not self.is_empty():
- return self.stack.pop()
- def peek(self):
- if not self.is_empty():
- return self.stack[-1]
- ################## ZADANIA #######################
- '''
- Zad 1. Utwórz symulator przeglądarki gdzie historia przeglądania będzie zapisywana w
- formie stosu. Użytkownik może wchodzić na różne strony w programie i cofać się
- w historii przeglądania. Upakuj całą funkcjonalność w klasie BrowserHistory
- natomiast do stworzenia samej historii wykorzystaj stos z zadań poprzednich.
- Potrzebne zmienne w klasie BrowserHistory:
- - struktura do przechowywania historii przeglądania
- - zapamiętanie obecnej strony
- Wymagane metody:
- - (oczywiście) konstuktor
- - przejście do strony o podanym adresie
- - cofnięcie się do poprzedniej strony
- Zad. dod. 1.
- Dodaj opcję przejścia do następnej strony w historii (jeśli cofnęliśmy się). HINT: Można zastosować 2 listy, jedną na strony przed aktualnie wyświetlaną i drugą na te po aktualnie wyświetlanej. Zmodyfikuj odpowiednio metodę cofnięcia aby współgrała z obecnym metodem przechodzenia po historii.
- '''
- '''
- Zad 2. Utwórz symulator kolejki do kina gdzie elementami kolejki są klienci razem z ich
- zamówieniem. Do utworzenia symulatora kolejki użyj naszej struktury Kolejki, którą
- stworzyliśmy wcześniej.
- Klienci są reprezentowani przez klasę Customer, która ma atrybuty name (imię
- klienta) i order (zamówienie klienta).
- Kolejka do kina jest reprezentowana przez
- klasę CinemaQueue, która używa implementacji kolejki (klasy Queue) do
- przechowywania klientów.
- ● Metoda is_empty sprawdza, czy kolejka jest pusta.
- ● Metoda add_customer dodaje klienta do kolejki.
- ● Metoda remove_customer usuwa klienta z kolejki.
- ● Metoda next_customer_order zwraca zamówienie klienta, który jest
- pierwszy w kolejce, ale go nie usuwa.
- Przetestuj działanie klasy i ich metod (dodaj kilku klientów do listy i obsłuż wszystkich klientów czyli po prostu wyświetl ich zamówienia z informacją że zostali obsłużeniu aż kolejka będzie pusta)
- '''
- '''
- Zad. dod. 2.
- Napisz funkcję, która sprawdzi, czy dany ciąg znaków jest palindromem,
- korzystając z naszej implementacji stosu.
- https://sjp.pwn.pl/slowniki/palindrom.html
- '''
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement