question: public INode remove ( ) { ArrayList < INode > min = tree . minimum ( ) ; INode best = min . remove ( 0 ) ; hash . remove ( best ) ; if ( min . size ( ) > 0 ) { tree . insert ( best . score ( ) , min ) ; } return best ; }
target:  Remove and return INode with minimum score value