code: public static int
      suffixsort(String T, int[] SA, int n) {
          if ((T == null) || (SA == null) ||
              (T.length() < n) || (SA.length < n)) {
              return -1;
          }
          if (n <= 1) {
              if (n == 1) {
                  SA[0] = 0;
              }
              return 0;
          }
          return SA_IS(new StringArray(T, 0), SA, 0, n, 65536, false);
      }
docs: /* String