
    -i6                     J    S SK Jr  S SKrS SKJr  S SKJr  SS jrS	S jr	S r
g)
    )defaultdictN)assert_array_almost_equal)"single_source_shortest_path_lengthc           
         U R                   S   n[        R                  U [        R                  " U S:H  5      '   SU R                  S S US-   2'   U(       d   [        R
                  " X R                  5      n [        U5       HF  n[        U5       H4  n[        U5       H"  n[        XU4   XU4   XU4   -   5      XU4'   M$     M6     MH     SU [        R                  " [        R                  " U 5      5      '   U $ )Nr      )
shapenpinfwhereflatminimumTrangeminisinf)graphdirectedNkijs         Y/var/www/html/venv/lib/python3.13/site-packages/sklearn/utils/tests/test_shortest_path.pyfloyd_warshall_slowr   	   s    AA #%&&E"((5A:
 EJJx!a%x

5''*1XqA1X!%1+uT{Ua4[/HId   
 ()E"((288E?
#$L    c                 
   [         R                  R                  S5      nUR                  X 45      nX"R                  -   nUR                  X U -  S-  S9UR                  X U -  S-  S94nSX#'   SUR                  S S U S-   2'   U$ )Nr      )sizer   )r	   randomRandomStaterandom_sampler   randintr   )r   rngdist_matrixr   s       r   generate_graphr$      s    
))


"C##QF+K -K 
QUaZ	(#++a!eqj+*IJAKN "#KXAXr   c            	         [        S5      n SX S:g  '   S H  nU(       d   [        R                  " X R                  5      n [	        U R                  5       U5      n[        U R                  S   5       H_  n[        [        5      nUR                  [        X5      5        [        X#   R                  S   5       H  n[        XE   X#U4   5        M     Ma     M     g )N   r   r   )TF)r$   r	   r   r   r   copyr   r   r   intupdater   r   )r#   r   graph_pyr   	dist_dictr   s         r   test_shortest_pathr,   1   s     $K$%Kq !!**[--@K&{'7'7'98D{((+,A#C(I?OP8;,,Q/0)),AG 1 - "r   )F)r&   )collectionsr   numpyr	   numpy.testingr   sklearn.utils.graphr   r   r$   r,    r   r   <module>r2      s!    #  3 B,$Hr   