@@ -27,7 +27,7 @@ class Node:
27
27
True
28
28
"""
29
29
30
- def __init__ (self , key ):
30
+ def __init__ (self , key ) -> None :
31
31
self .key = key
32
32
self .degree = 0
33
33
self .marked = False
@@ -69,11 +69,11 @@ class FibonacciHeap:
69
69
3
70
70
"""
71
71
72
- def __init__ (self ):
72
+ def __init__ (self ) -> None :
73
73
self .min_node = None
74
74
self .total_nodes = 0
75
75
76
- def insert (self , key ):
76
+ def insert (self , key ) -> Node :
77
77
"""Insert a new key into the heap.
78
78
79
79
Args:
@@ -105,7 +105,7 @@ def insert(self, key):
105
105
self .total_nodes += 1
106
106
return new_node
107
107
108
- def _insert_into_circular_list (self , base_node , node_to_insert ):
108
+ def _insert_into_circular_list (self , base_node , node_to_insert ) -> Node :
109
109
"""Insert node into circular linked list.
110
110
111
111
Args:
@@ -136,7 +136,7 @@ def _insert_into_circular_list(self, base_node, node_to_insert):
136
136
base_node .right = node_to_insert
137
137
return base_node
138
138
139
- def extract_min (self ):
139
+ def extract_min (self ) -> Node :
140
140
"""Remove and return the minimum key from the heap.
141
141
142
142
This operation removes the node with the minimum key from the heap,
@@ -325,7 +325,7 @@ def _cut(self, child_node, parent_node):
325
325
child_node .parent = None
326
326
child_node .marked = False
327
327
328
- def _cascading_cut (self , current_node ):
328
+ def _cascading_cut (self , current_node ) -> None :
329
329
"""Perform cascading cut operation.
330
330
331
331
Args:
@@ -338,7 +338,7 @@ def _cascading_cut(self, current_node):
338
338
self ._cut (current_node , parent_node )
339
339
self ._cascading_cut (parent_node )
340
340
341
- def delete (self , node ):
341
+ def delete (self , node ) -> None :
342
342
"""Delete a node from the heap.
343
343
344
344
This operation removes a given node from the heap by first decreasing
@@ -365,7 +365,7 @@ def delete(self, node):
365
365
self .decrease_key (node , float ("-inf" ))
366
366
self .extract_min ()
367
367
368
- def find_min (self ):
368
+ def find_min (self ) -> Any :
369
369
"""Return the minimum key without removing it from the heap.
370
370
371
371
This operation provides quick access to the minimum key in the heap
@@ -384,7 +384,7 @@ def find_min(self):
384
384
"""
385
385
return self .min_node .key if self .min_node else None
386
386
387
- def is_empty (self ):
387
+ def is_empty (self ) -> bool :
388
388
"""Check if heap is empty.
389
389
390
390
Returns:
@@ -400,7 +400,7 @@ def is_empty(self):
400
400
"""
401
401
return self .min_node is None
402
402
403
- def merge (self , other_heap ):
403
+ def merge (self , other_heap ) -> None :
404
404
"""Merge another Fibonacci heap into this one.
405
405
406
406
This operation combines two Fibonacci heaps by concatenating their
0 commit comments