1. public boolean sortedBetween (E[] array, int left, int right) {
  2. assert array != null : "precondition";
  3. assert left >= 0 : "precondition";
  4. assert right < array.length : "precondition";
  5.  
  6. if( left >= right
  7. || ! array[left].compareTo(array[left + 1]) <= 0)) {
  8. return left == right;
  9. }
  10.  
  11. return sortedBetween(array, left++, right);
  12. }
  13.