From 326286128ca07ac707a5a64973665ddecb4b2256 Mon Sep 17 00:00:00 2001 From: Oliver Hofmann Date: Thu, 24 Apr 2025 09:41:34 +0200 Subject: [PATCH] fixed performance analysis in bin_tree --- vorlesung/L05_binaere_baeume/bin_tree.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/vorlesung/L05_binaere_baeume/bin_tree.py b/vorlesung/L05_binaere_baeume/bin_tree.py index 6e9caa6..49e12a8 100644 --- a/vorlesung/L05_binaere_baeume/bin_tree.py +++ b/vorlesung/L05_binaere_baeume/bin_tree.py @@ -40,10 +40,11 @@ class BinaryTree: def search(self, value): current = self.root + value = self.new_node(value) while current: - if value < current.value: + if value < current: current = current.left - elif value > current.value: + elif value > current: current = current.right else: return current @@ -55,11 +56,12 @@ class BinaryTree: # der Knoten, der den zu löschenden Knoten ersetzt und der Elternknoten des gelöschten Knotens parent = None current = self.root + value = self.new_node(value) while current: - if value < current.value: + if value < current: parent = current current = current.left - elif value > current.value: + elif value > current: parent = current current = current.right else: @@ -98,7 +100,7 @@ class BinaryTree: if not parent: self.root = child return child, None - elif parent.left == current: + elif parent.left is current: parent.left = child return child, parent else: