private int determineMaxLevelRec(int level,Node v){
  int newLevel=level;
  for (Edge e=v.getFirstOutEdge(); e != null; e=v.getNextOutEdge(e)) {
    newLevel=Math.max(newLevel,determineMaxLevelRec(level,e.getTarget()) + 1);
  }
  return newLevel;
}

private int determineMaxLevelRec ( int level , Node v ) { int newLevel = level ; for ( Edge e = v . getFirstOutEdge ( ) ; e != null ; e = v . getNextOutEdge ( e ) ) { newLevel = Math . max ( newLevel , determineMaxLevelRec ( level , e . getTarget ( ) ) + 1 ) ; } return newLevel ; }
recursively does the work
