// revised!! import java.util.*; public class sorts { public static void main( String[] args ) { int n; if ( args.length < 1 ) { System.out.println( "usage: java sorts " ); System.exit( 1 ); } n = Integer.parseInt( args[0].trim() ); int[] A = new int[n]; for ( int i=0; iafter blortSort:", A ); System.out.println(); permute( A ); printArray( "before selectionSort:", A ); selectionSort( A ); printArray( ">after selectionSort:", A ); System.out.println(); permute( A ); printArray( "before insertionSort:", A ); insertionSort( A ); printArray( ">after insertionSort:", A ); System.out.println(); permute( A ); printArray( "before bubbleSort:", A ); bubbleSort( A ); printArray( ">after bubbleSort:", A ); System.exit( 0 ); } // end of main() method static void printArray( String s, int[] A ) { System.out.print( s+" --> " ); for ( int i=0; i A[i+1] ) { anyErrors = true; } else { i++; } } /* end while */ return( ! anyErrors ); } /* end of isSorted() */ static void permute( int[] A ) { int i, r; for ( i=0; i 0) && (A[pos-1]>key )) { A[pos] = A[pos-1]; pos--; } // end while A[pos] = key; printArray( "after pass#"+i, A ); } // end for } // end of insertionSort() method static void selectionSort( int[] A ) { for ( int i=0; i A[i+1] ) { swap( i,i+1,A ); } } // end for i printArray( "after pass#"+pass, A ); } // end for pass } // end of bubbleSort() method } // end of class sorts