@@ -15,10 +15,10 @@ class FibonacciTree:
15
15
16
16
def __init__ (self , key : int ) -> None :
17
17
self .key = key
18
- self .children : list [' FibonacciTree' ] = []
18
+ self .children : list [" FibonacciTree" ] = []
19
19
self .order = 0
20
20
21
- def add_at_end (self , child_node : ' FibonacciTree' ) -> None :
21
+ def add_at_end (self , child_node : " FibonacciTree" ) -> None :
22
22
"""
23
23
Adds a child node 'child_node' to the end of the children list.
24
24
@@ -53,8 +53,8 @@ class FibonacciHeap:
53
53
"""
54
54
55
55
def __init__ (self ) -> None :
56
- self .trees : list [' FibonacciTree' ] = []
57
- self .least : ' FibonacciTree' | None = None
56
+ self .trees : list [" FibonacciTree" ] = []
57
+ self .least : " FibonacciTree" | None = None
58
58
self .count = 0
59
59
60
60
def insert (self , key : int ) -> None :
@@ -66,7 +66,7 @@ def insert(self, key: int) -> None:
66
66
"""
67
67
new_tree = FibonacciTree (key )
68
68
self .trees .append (new_tree )
69
- if ( self .least is None or key < self .least .key ) :
69
+ if self .least is None or key < self .least .key :
70
70
self .least = new_tree
71
71
self .count = self .count + 1
72
72
@@ -88,8 +88,7 @@ def extract_min(self) -> int | None:
88
88
Returns:
89
89
int: The minimum key.
90
90
"""
91
- smallest = self .least
92
- if smallest is not None :
91
+ if (smallest := self .least ) is not None :
93
92
for child in smallest .children :
94
93
if child is not None :
95
94
self .trees .append (child )
@@ -126,9 +125,10 @@ def consolidate(self) -> None:
126
125
for k in aux :
127
126
if k is not None :
128
127
self .trees .append (k )
129
- if ( self .least is None or k .key < self .least .key ) :
128
+ if self .least is None or k .key < self .least .key :
130
129
self .least = k
131
130
131
+
132
132
def floor_log2 (x : int ) -> int :
133
133
"""
134
134
Computes the floor of the base-2 logarithm of 'x'.
@@ -141,11 +141,14 @@ def floor_log2(x: int) -> int:
141
141
"""
142
142
return math .floor (math .log2 (x )) if x > 0 else 0
143
143
144
+
144
145
# Doctest for floor_log2
145
146
if __name__ == "__main__" :
146
147
import doctest
148
+
147
149
doctest .testmod ()
148
150
149
151
if __name__ == "__main__" :
150
152
import doctest
153
+
151
154
doctest .testmod ()
0 commit comments