@@ -16,26 +16,26 @@ def swap_all(arr, i, j, extra1=None, extra2=None):
1616
1717
1818@njit
19- def partition (data , start , end , p_ord , * extra ):
19+ def partition (data , start , end , p_ord , extra1 = None , extra2 = None ):
2020 higher = start
2121 for j in range (start , end ):
2222 j_ord = data [j ]
2323 if j_ord < p_ord :
24- swap_all (data , higher , j , * extra )
24+ swap_all (data , higher , j , extra1 , extra2 )
2525 higher += 1
2626 return higher
2727
2828
2929@njit
30- def quickselect (data , start , end , k , * extra ):
30+ def quickselect (data , start , end , k , extra1 = None , extra2 = None ):
3131 if (k < start ) or (k >= end ):
3232 return
3333 start_ , end_ , higher = start , end , None
3434 while higher != k + 1 :
3535 p = data [k ]
36- swap_all (data , start_ , k , * extra )
37- higher = partition (data , start_ + 1 , end_ , p , * extra )
38- swap_all (data , start_ , higher - 1 , * extra )
36+ swap_all (data , start_ , k , extra1 , extra2 )
37+ higher = partition (data , start_ + 1 , end_ , p , extra1 , extra2 )
38+ swap_all (data , start_ , higher - 1 , extra1 , extra2 )
3939 if k <= higher - 1 :
4040 end_ = higher
4141 else :
0 commit comments