File tree Expand file tree Collapse file tree 1 file changed +4
-19
lines changed
Expand file tree Collapse file tree 1 file changed +4
-19
lines changed Original file line number Diff line number Diff line change @@ -61,36 +61,21 @@ def value(self) -> T:
6161 """
6262 return self ._value
6363
64+
6465 @staticmethod
65- def merge (
66- root1 : SkewNode [T ] | None , root2 : SkewNode [T ] | None
67- ) -> SkewNode [T ] | None :
68- """
69- Merge 2 nodes together.
70- >>> SkewNode.merge(SkewNode(10),SkewNode(-10.5)).value
71- -10.5
72- >>> SkewNode.merge(SkewNode(10),SkewNode(10.5)).value
73- 10
74- >>> SkewNode.merge(SkewNode(10),SkewNode(10)).value
75- 10
76- >>> SkewNode.merge(SkewNode(-100),SkewNode(-10.5)).value
77- -100
78- """
66+ def merge (root1 : SkewNode [T ] | None , root2 : SkewNode [T ] | None ) -> SkewNode [T ] | None :
7967 if not root1 :
8068 return root2
81-
8269 if not root2 :
8370 return root1
84-
85- # Use explicit __lt__ method for type safety
86- if root1 .value > root2 .value :
71+
72+ if root2 .value < root1 .value :
8773 root1 , root2 = root2 , root1
8874
8975 result = root1
9076 temp = root1 .right
9177 result .right = root1 .left
9278 result .left = SkewNode .merge (temp , root2 )
93-
9479 return result
9580
9681
You can’t perform that action at this time.
0 commit comments