با توجه به ریشه یک درخت باینری، تمام مسیرهای ریشه به برگ را به ترتیب برگردانید. یک برگ یک گره بدون فرزند است.
در پیتون یک راه حل وجود دارد: ``` def binaryTreePaths ((root): def dfs ((node, path): اگر node نیست: return path.append ((str(node.val)) اگر node نیست: node.left و نه node.right: paths.append (('->'join(path)) else: dfs ((node.left, path) dfs ((node.right, path) path.pop (((paths = [] dfsroot, []) return paths ``) این راه حل از یک تابع کمک کننده `dfs استفاده می کند تا به طور مکرر از درخت دوگانه شروع به از node root آغاز شود. ما مسیر مسیر node را با استفاده از node node `path (str) و نه node.right (right) پیگیری می کنیم. در نهایت در هر مرحله اول، بررسی می کنیم که آیا