For STEP 1 of Kosaraju 's Algorithm
static void dfsFirst ( int u ) { if ( visited [ u ] ) return ; visited [ u ] = true ; for ( int i = 0 ; i < adj . get ( u ) . size ( ) ; i ++ ) dfsFirst ( adj . get ( u ) . get ( i ) ) ; s . push ( u ) ; }