From ec088bac79255beebf3883f1f13e0cfe42bc269c Mon Sep 17 00:00:00 2001 From: Hitesh Malhotra Date: Wed, 16 Jul 2025 17:24:55 +0530 Subject: [PATCH] chore: update codebase --- btree/__init__.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/btree/__init__.py b/btree/__init__.py index 929526b..2f47367 100644 --- a/btree/__init__.py +++ b/btree/__init__.py @@ -231,16 +231,16 @@ def remove_from_non_leaf(self, idx: int) -> None: if len(self.children[idx].keys) >= self.min_degree: pred = self.children[idx].get_predecessor() self.keys[idx] = pred - self.children[idx].delete(pred) + self.children[idx]._delete_internal(pred) elif len(self.children[idx + 1].keys) >= self.min_degree: succ = self.children[idx + 1].get_successor() self.keys[idx] = succ - self.children[idx + 1].delete(succ) + self.children[idx + 1]._delete_internal(succ) else: self.merge(idx) - self.children[idx].delete(key) + self.children[idx]._delete_internal(key) def _delete_internal(self, key: int) -> None: """ @@ -302,8 +302,7 @@ def traverse(self) -> None: :return: None """ - if self.root: - self.root.traverse() + self.root.traverse() def search(self, key: int) -> Optional['BTreeNode']: """ @@ -312,7 +311,7 @@ def search(self, key: int) -> Optional['BTreeNode']: :param key: The key to search for. :return: Optional[BTreeNode] The node containing the key, or None if not found. """ - if not self.root: + if not self.root.keys: return None return self.root.search(key) @@ -327,10 +326,9 @@ def insert(self, key: int) -> None: new_root = BTreeNode(self.min_degree, False) new_root.children.append(self.root) new_root.split_child(0) - new_root.insert_non_full(key) self.root = new_root - else: - self.root.insert_non_full(key) + + self.root.insert_non_full(key) def delete(self, key: int) -> None: """