Package edu.princeton.cs.algs4
Class BinaryInsertion
 Object

 edu.princeton.cs.algs4.BinaryInsertion

public class BinaryInsertion extends Object
TheBinaryInsertion
class provides a static method for sorting an array using an optimized binary insertion sort with half exchanges.In the worst case, this implementation makes ~ n log_{2}n compares to sort an array of length n. However, in the worst case, the running time is Θ(n^{2}) because the number of array accesses can be quadratic. As such, it is not suitable for sorting large arrays (unless the number of inversions is small).
This sorting algorithm is stable. It uses Θ(1) extra memory (not including the input array).
For additional documentation, see Section 2.1 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.
 Author:
 Ivan Pesin, Robert Sedgewick, Kevin Wayne


Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
main(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(Comparable[] a)
Rearranges the array in ascending order, using the natural order.



Method Detail

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

main
public static void main(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 commandline arguments

