|
@ -30,7 +30,17 @@ def get_parent(node): |
|
|
|
|
|
|
|
|
# Obecný next: další Node v "the-right-order" pořadí (já, pak potomci, pak sousedé) |
|
|
# Obecný next: další Node v "the-right-order" pořadí (já, pak potomci, pak sousedé) |
|
|
def general_next(node): |
|
|
def general_next(node): |
|
|
pass |
|
|
# Máme potomka? |
|
|
|
|
|
if node.first_child is not None: |
|
|
|
|
|
return node.first_child |
|
|
|
|
|
# Nemáme potomka. |
|
|
|
|
|
# Chceme najít následníka sebe, nebo některého (toho nejblíž příbuzného) z našich předků (tatínka, dědečka, ...) |
|
|
|
|
|
while node.succ is None: |
|
|
|
|
|
node = get_parent(node) |
|
|
|
|
|
if node is None: |
|
|
|
|
|
return None # žádný z předků nemá následníka, takže žádny vrchol nenásleduje. |
|
|
|
|
|
return node.succ |
|
|
|
|
|
|
|
|
def general_prev(node): |
|
|
def general_prev(node): |
|
|
pass |
|
|
pass |
|
|
|
|
|
|
|
|