From a913d23b3b44b28d85e09a1321a317872484552f Mon Sep 17 00:00:00 2001 From: DrishtiTripathi2230 Date: Tue, 19 May 2026 13:41:28 +0530 Subject: [PATCH 1/2] sorts/tree_sort: use Iterable type hint and enable range doctest --- sorts/tree_sort.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/sorts/tree_sort.py b/sorts/tree_sort.py index 056864957d4d..eafee8b12ca4 100644 --- a/sorts/tree_sort.py +++ b/sorts/tree_sort.py @@ -6,7 +6,7 @@ from __future__ import annotations -from collections.abc import Iterator +from collections.abc import Iterator, Iterable from dataclasses import dataclass @@ -39,7 +39,7 @@ def insert(self, val: int) -> None: self.right.insert(val) -def tree_sort(arr: list[int]) -> tuple[int, ...]: +def tree_sort(arr: Iterable[int]) -> tuple[int, ...]: """ >>> tree_sort([]) () @@ -54,11 +54,12 @@ def tree_sort(arr: list[int]) -> tuple[int, ...]: >>> tree_sort([5, 6, 1, -1, 4, 37, 2, 7]) (-1, 1, 2, 4, 5, 6, 7, 37) - # >>> tree_sort(range(10, -10, -1)) == tuple(sorted(range(10, -10, -1))) - # True + >>> tree_sort(range(10, -10, -1)) == tuple(sorted(range(10, -10, -1))) + True """ + arr = list(arr) if len(arr) == 0: - return tuple(arr) + return () root = Node(arr[0]) for item in arr[1:]: root.insert(item) From 2818754fc0f2a7be2578aeb3b5cda0df1c39583b Mon Sep 17 00:00:00 2001 From: DrishtiTripathi2230 Date: Tue, 19 May 2026 13:50:53 +0530 Subject: [PATCH 2/2] sorts/tree_sort: use Iterable type hint and enable range doctest --- sorts/tree_sort.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorts/tree_sort.py b/sorts/tree_sort.py index eafee8b12ca4..d386baf7745f 100644 --- a/sorts/tree_sort.py +++ b/sorts/tree_sort.py @@ -6,7 +6,7 @@ from __future__ import annotations -from collections.abc import Iterator, Iterable +from collections.abc import Iterable, Iterator from dataclasses import dataclass