Class QuickSort2


  • public final class QuickSort2
    extends java.lang.Object
    WARNING This class provides mirror implementations of the Acrobat quicksort algorithm based on qsort.c in VisualStudio 6 (Acro6) and VisualStudio 2003 (Acro7). Compatibility with these particular algorithms is critical for correct digital signature processing. These versions of quicksort are designed to provide the same ordering characteristics as Acrobat in the presence of objects in the array that have duplicate keys (that is, multiple objects that compare as equals, such as annotation IDs, but whose values differ (e.g., a digest of the annotation dictionary)). How duplicate objects are sorted is a function of the partioning pivot point and the threshold at which shortsort is invoked, so CHANGES SHOULD NOT BE MADE to this implementation without some very, very deep soul searching.
    • Constructor Summary

      Constructors 
      Constructor Description
      QuickSort2()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void sort_acro6​(java.lang.Object[] array, java.util.Comparator comparator)
      Performs quick sort on the array passed here based on the comparator.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • QuickSort2

        public QuickSort2()
    • Method Detail

      • sort_acro6

        public static void sort_acro6​(java.lang.Object[] array,
                                      java.util.Comparator comparator)
        Performs quick sort on the array passed here based on the comparator.