#!/usr/bin/python3 # Jednosměrné uspořádané seznamy # Na místa komentářů TODO doplňte svůj kód. import sys class Node: def __init__(self, x): # Každy prvek si pamatuje hodnotu a následníka self.value = x self.next = None class SortedList: def __init__(self): # Seznam si pamatuje odkaz na svůj první prvek self.first = None def insert(self, x): """Zatřídí do seznamu nový prvek se zadanou hodnotou. Pokud už tam takový prvek je, neudělá nic. """ # TODO pass def delete(self, x): """Odstraní ze seznamu prvek se zadanou hodnotou. Pokud tam žádný takový prvek není, neudělá nic. """ # TODO pass def pred(self, x): """Vrátí předchůdce čísla x, tedy největší prvek seznamu, který je ostře menší než x. Není-li takový, vrátí None. """ # TODO return None def succ(self, x): """Vrátí následníka čísla x, tedy nejmenší prvek seznamu, který je ostře větší než x. Není-li takový, vrátí None. """ # TODO return None def to_python_list(self): """Převede náš seznam na pythoní seznam.""" out = [] this = self.first while this: out.append(this.value) this = this.next return out def print(self): """Vypíše seznam.""" print(self.to_python_list())