in reply to sorting agorithm

perldoc -f sort | grep algo
Perl 5.6 and earlier used a quicksort algorithm to implement sort. That algorithm was not stable, and *could* go quadratic. implementation was replaced with a stable mergesort algorithm sort. Its rather blunt control of the underlying algorithm may # guarantee stability, regardless of algorithm

Replies are listed 'Best First'.
Re^2: sorting agorithm
by JavaFan (Canon) on Aug 13, 2009 at 09:47 UTC
    And now including the lines that do not contain the word "algorithm":
                   Perl 5.6 and earlier used a quicksort algorithm to implement
                   sort.  That algorithm was not stable, and could go quadratic.
                   (A stable sort preserves the input order of elements that
                   compare equal.  Although quicksort’s run time is O(NlogN) when
                   averaged over all arrays of length N, the time can be O(N**2),
                   quadratic behavior, for some inputs.)  In 5.7, the quicksort
                   implementation was replaced with a stable mergesort algorithm
                   whose worst-case behavior is O(NlogN).  But benchmarks
                   indicated that for some inputs, on some platforms, the original
                   quicksort was faster.  5.8 has a sort pragma for limited
                   control of the sort.  Its rather blunt control of the
                   underlying algorithm may not persist into future Perls, but the
                   ability to characterize the input or output in implementation
                   independent ways quite probably will.  See sort.
    
      I see you used
      perldoc -f sort | grep -C5 algo
      :)
        Considering that the first line of my quote contains the word 'algorithm', you're obviously very, very wrong.