@@ -52,45 +52,33 @@ def min_heapify(self, idx):
5252
5353 >>> priority_queue_test.array = [(5, 'A'), (10, 'B'), (15, 'C')]
5454 >>> priority_queue_test.min_heapify(0)
55- Traceback (most recent call last):
56- ...
57- TypeError: 'list' object is not callable
5855 >>> priority_queue_test.array
5956 [(5, 'A'), (10, 'B'), (15, 'C')]
6057
6158 >>> priority_queue_test.array = [(10, 'A'), (5, 'B'), (15, 'C')]
6259 >>> priority_queue_test.min_heapify(0)
63- Traceback (most recent call last):
64- ...
65- TypeError: 'list' object is not callable
6660 >>> priority_queue_test.array
67- [(10 , 'A '), (5 , 'B '), (15, 'C')]
61+ [(5 , 'B '), (10 , 'A '), (15, 'C')]
6862
6963 >>> priority_queue_test.array = [(10, 'A'), (15, 'B'), (5, 'C')]
7064 >>> priority_queue_test.min_heapify(0)
71- Traceback (most recent call last):
72- ...
73- TypeError: 'list' object is not callable
7465 >>> priority_queue_test.array
75- [(10 , 'A '), (15, 'B'), (5 , 'C ')]
66+ [(5 , 'C '), (15, 'B'), (10 , 'A ')]
7667
7768 >>> priority_queue_test.array = [(10, 'A'), (5, 'B')]
7869 >>> priority_queue_test.cur_size = len(priority_queue_test.array)
7970 >>> priority_queue_test.pos = {'A': 0, 'B': 1}
8071 >>> priority_queue_test.min_heapify(0)
81- Traceback (most recent call last):
82- ...
83- TypeError: 'list' object is not callable
8472 >>> priority_queue_test.array
85- [(10 , 'A '), (5 , 'B ')]
73+ [(5 , 'B '), (10 , 'A ')]
8674 """
8775 lc = self .left (idx )
8876 rc = self .right (idx )
89- if lc < self .cur_size and self .array ( lc ) [0 ] < self .array [idx ][0 ]:
77+ if lc < self .cur_size and self .array [ lc ] [0 ] < self .array [idx ][0 ]:
9078 smallest = lc
9179 else :
9280 smallest = idx
93- if rc < self .cur_size and self .array ( rc ) [0 ] < self .array [smallest ][0 ]:
81+ if rc < self .cur_size and self .array [ rc ] [0 ] < self .array [smallest ][0 ]:
9482 smallest = rc
9583 if smallest != idx :
9684 self .swap (idx , smallest )
@@ -130,12 +118,12 @@ def extract_min(self):
130118 >>> priority_queue_test.extract_min()
131119 'C'
132120 >>> priority_queue_test.array[0]
133- (15 , 'B ')
121+ (10 , 'A ')
134122 """
135123 min_node = self .array [0 ][1 ]
136124 self .array [0 ] = self .array [self .cur_size - 1 ]
137125 self .cur_size -= 1
138- self .min_heapify (1 )
126+ self .min_heapify (0 )
139127 del self .pos [min_node ]
140128 return min_node
141129
0 commit comments