>>> tree_sort([]) () >>> tree_sort((1,)) (1,) >>> tree_sort((1, 2)) (1, 2) >>> tree_sort([5, 2, 7]) (2, 5, 7) >>> tree_sort((5, -4, 9, 2, 7)) (-4, 2, 5, 7, 9) >>> tree_sort([5, 6, 1, -1, 4, 37, 2, 7]) (-1, 1, 2, 4, 5, 6, 7, 37) # >>> tree_sort(ra
(arr: list[int])
| 40 | |
| 41 | |
| 42 | def tree_sort(arr: list[int]) -> tuple[int, ...]: |
| 43 | """ |
| 44 | >>> tree_sort([]) |
| 45 | () |
| 46 | >>> tree_sort((1,)) |
| 47 | (1,) |
| 48 | >>> tree_sort((1, 2)) |
| 49 | (1, 2) |
| 50 | >>> tree_sort([5, 2, 7]) |
| 51 | (2, 5, 7) |
| 52 | >>> tree_sort((5, -4, 9, 2, 7)) |
| 53 | (-4, 2, 5, 7, 9) |
| 54 | >>> tree_sort([5, 6, 1, -1, 4, 37, 2, 7]) |
| 55 | (-1, 1, 2, 4, 5, 6, 7, 37) |
| 56 | |
| 57 | # >>> tree_sort(range(10, -10, -1)) == tuple(sorted(range(10, -10, -1))) |
| 58 | # True |
| 59 | """ |
| 60 | if len(arr) == 0: |
| 61 | return tuple(arr) |
| 62 | root = Node(arr[0]) |
| 63 | for item in arr[1:]: |
| 64 | root.insert(item) |
| 65 | return tuple(root) |
| 66 | |
| 67 | |
| 68 | if __name__ == "__main__": |
no test coverage detected