In-order traversal — daraxtni chap → root → o'ng tartibida aylanish. BST da in-order traversal doimo tartiblangan natija beradi!
def inorder(root):
if root:
inorder(root.left) # avval chapni
print(root.data) # so'ng o'zini
inorder(root.right) # so'ng o'ngniMisol:
root = None
for x in [8, 3, 10, 1, 6]:
root = kiritish(root, x)
inorder(root)
# 1
# 3
# 6
# 8
# 10Sonlar aralash kiritildi (8, 3, 10, 1, 6), lekin in-order traversal tartiblangan holda chiqardi!
Bu BST ning eng kuchli xususiyati — saralanmagan sonlarni kiritib, in-order traversal bilan tartiblangan holda olish mumkin.
Muhim qoidalar:
BST ni in-order traversal qilish
Sonlarni kiritib BST yarating va in-order traversal bilan tartiblangan holda chiqaring.