Documentation of 'edu.princeton.cs.algs4.Insertion' Java class
Insertion
edu.princeton.cs.algs4

Class Insertion



  • public class Insertion
    extends java.lang.Object
    The Insertion class provides static methods for sorting an array using insertion sort.

    This implementation makes ~ 1/2 n^2 compares and exchanges in the worst case, so it is not suitable for sorting large arbitrary arrays. More precisely, the number of exchanges is exactly equal to the number of inversions. So, for example, it sorts a partially-sorted array in linear time.

    The sorting algorithm is stable and uses O(1) extra memory.

    See InsertionPedantic.java for a version that eliminates the compiler warning.

    For additional documentation, see Section 2.1 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static int[] indexSort(java.lang.Comparable[] a)
      Returns a permutation that gives the elements in the array in ascending order.
      static void main(java.lang.String[] args)
      Reads in a sequence of strings from standard input; insertion sorts them; and prints them to standard output in ascending order.
      static void sort(java.lang.Comparable[] a)
      Rearranges the array in ascending order, using the natural order.
      static void sort(java.lang.Comparable[] a, int lo, int hi)
      Rearranges the subarray a[lo..hi) in ascending order, using the natural order.
      static void sort(java.lang.Object[] a, java.util.Comparator comparator)
      Rearranges the array in ascending order, using a comparator.
      static void sort(java.lang.Object[] a, int lo, int hi, java.util.Comparator comparator)
      Rearranges the subarray a[lo..hi) in ascending order, using a comparator.
      • Methods inherited from class java.lang.Object

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

      • sort

        public static void sort(java.lang.Comparable[] a)
        Rearranges the array in ascending order, using the natural order.
        Parameters:
        a - the array to be sorted
      • sort

        public static void sort(java.lang.Comparable[] a,
                                int lo,
                                int hi)
        Rearranges the subarray a[lo..hi) in ascending order, using the natural order.
        Parameters:
        a - the array to be sorted
        lo - left endpoint (inclusive)
        hi - right endpoint (exclusive)
      • sort

        public static void sort(java.lang.Object[] a,
                                java.util.Comparator comparator)
        Rearranges the array in ascending order, using a comparator.
        Parameters:
        a - the array
        comparator - the comparator specifying the order
      • sort

        public static void sort(java.lang.Object[] a,
                                int lo,
                                int hi,
                                java.util.Comparator comparator)
        Rearranges the subarray a[lo..hi) in ascending order, using a comparator.
        Parameters:
        a - the array
        lo - left endpoint (inclusive)
        hi - right endpoint (exclusive)
        comparator - the comparator specifying the order
      • indexSort

        public static int[] indexSort(java.lang.Comparable[] a)
        Returns a permutation that gives the elements in the array in ascending order.
        Parameters:
        a - the array
        Returns:
        a permutation p[] such that a[p[0]], a[p[1]], ..., a[p[n-1]] are in ascending order
      • main

        public static void main(java.lang.String[] args)
        Reads in a sequence of strings from standard input; insertion sorts them; and prints them to standard output in ascending order.
        Parameters:
        args - the command-line arguments

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.