Saturday, 5 October 2013

Quicksort implemented using Java......

/*Java program for sorting an array using quicksort ...*/

here is the code ...


       

import java.io.*;
public class Quick {

 public static void Quicksort(int[] arr, int lower, int upper) {
  int i = 0;
  if (lower < upper) {
   i = split(arr, lower, upper);
   Quicksort(arr, lower, i - 1);
   Quicksort(arr, i + 1, upper);
  }
 }

 public static int split(int[] arr, int lower, int upper) {
  int t = 0;
  int p = lower + 1;
  int q = upper;
  try {
   while (p <= q) {

    while (arr[p] < arr[lower])
     p++;

    while (arr[q] > arr[lower])
     q--;
    if (q > p) {
     t = arr[q];
     arr[q] = arr[p];
     arr[p] = t;
    }
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
  t = arr[q];
  arr[q] = arr[lower];
  arr[lower] = t;
  return q;

 }


 public static void main(String args[]) {
  int[] arr = {
   6,
   7,
   9,
   3,
   5,
   10,
   34,
   13
  };
  int lower = 0, upper = arr.length - 1;
  Quicksort(arr, lower, upper);

  for (int k: arr)
   System.out.println(k);

 }
}

       
 

No comments:

Post a Comment