docs: public int sgn() {
          // Is there a way to compute the parity while performing the permutations
          // making this much less expensive
          int total = 0;
  
          for( int i = 0; i < ret.length; i++ ) {
              int val = ret[i];
  
              for( int j = i+1; j < ret.length; j++ ) {
                  if( val > ret[j] ) {
                      total++;
                  }
              }
          }
  
          if( total % 2 == 1 )
              return -1;
          return 1;
      }