Vi posto in versione provabile un programma ricorsivo che ho trovato su un sito, secondo voi è una giusta ricorsione? Ho messo 2 System.out.println commentati, se le decommentate vedete i numeri di confronti che fa, e i numeri prossimi che si confrontano..si fa cosi??

codice:
class Ricorsione{
  public static void main(String[] args){

  int[] a = {90,50,6,9,5,2,80,90,6,7,5,4};


    System.out.println( minRic(a,0,a.length-1) );
  }



  public static int minRic(int a [ ], int from, int to)
  {
      if (from == to)
              return a[from];
      int mid = (from + to)/2;
      // cerchiamo ricorsivamente il minimo
      // nella prima e nella seconda metà dell'array:


      int min1 = minRic(a, from, mid);
      //System.out.println(min1);
      int min2 = minRic(a, mid+1, to);
      //System.out.println(min1);
      if (min1 <= min2)
              return min1;
      else
              return min2;
  }


}
p.s: deve trovare il minimo...allora tanto vale che lo scorre tutto l'array per fare cosi o sbaglio?