def get_sons(self): """ Returns sons list of binomial trees. get_sons() -> sons_list @rtype: list @return: sons list. """ res = LinkedList() curr = self._root._sons.get_first_record() while curr is not None: nTree = BinomialTree(None, None) nTree._root = curr.element nTree._root._father = None res.add_as_last(nTree) curr = curr._next return res
class Node: def __init__(self, element, key): self.element = element self._key = key self._rank = 0 self._father = None self._sons = LinkedList() def _swap(self, other): self.element, other.element = other.element, self.element self._key, other._key = other._key, self._key def _add_son(self, son): son._father = self self._sons.add_as_last(son) def __repr__(self): return "*B{}({}, {})".format(str(self._rank), str(self.element), str(self._key)) def __str__(self): return self.__repr__()
def __init__(self, element, key): self.element = element self._key = key self._rank = 0 self._father = None self._sons = LinkedList()