public void sort()

in graphjet-core/src/main/java/com/twitter/graphjet/hashing/SmallArrayBasedLongToDoubleMap.java [213:246]


  public void sort() {
    Arrays.quickSort(0, size, new IntComparator() {
      @Override
      // sort both keys and values in the order of decreasing values
      public int compare(int i1, int i2) {
        double val1 = values[i1];
        double val2 = values[i2];
        if (val1 < val2) {
          return 1;
        }  else if (val1 > val2) {
          return -1;
        }
        return 0;
      }

      @Override
      public int compare(Integer integer1, Integer integer2) {
        throw new UnsupportedOperationException();
      }
    }, new Swapper() {
      @Override
      public void swap(int i1, int i2) {
        long key1 = keys[i1];
        double value1 = values[i1];
        long metadata1 = metadataArray[i1];
        keys[i1] = keys[i2];
        values[i1] = values[i2];
        metadataArray[i1] = metadataArray[i2];
        keys[i2] = key1;
        values[i2] = value1;
        metadataArray[i2] = metadata1;
      }
    });
  }