The Quicksort : Quick sort « Data Structure Algorithm « C / ANSI-C

Home
C / ANSI-C
1.assert.h
2.Console
3.ctype.h
4.Data Structure Algorithm
5.Data Type
6.Development
7.File
8.Function
9.Language Basics
10.Macro Preprocessor
11.Math
12.math.h
13.Memory
14.Pointer
15.setjmp.h
16.signal.h
17.Small Application
18.stdio.h
19.stdlib.h
20.String
21.string.h
22.Structure
23.time.h
24.wctype.h
C Tutorial
C++
C++ Tutorial
Visual C++ .NET
C / ANSI-C » Data Structure Algorithm » Quick sortScreenshots 
The Quicksort

#include <string.h>
#include <stdio.h>
#include <stdlib.h>

void quickSortMain(char *items, int count);
void quickSort(char *items, int left, int right);

int main(void)
{
  char s[255]="asdfasdfasdfasdfasdfasdfasdf";

  quickSortMain(s, strlen(s));
  printf("The sorted string is: %s.\n", s);

  return 0;
}

void quickSortMain(char *items, int count)
{
  quickSort(items, 0, count-1);
}

void quickSort(char *items, int left, int right)
{
  int i, j;
  char x, y;

  i = left;
  j = right;
  x = items[(left+right)/2];

  do {
    while((items[i< x&& (i < right))
       i++;
    while((x < items[j]) && (j > left))
       j--;

    if(i <= j) {
      y = items[i];
      items[i= items[j];
      items[j= y;
      i++; j--;
    }
  while(i <= j);

  if(i < right)
      quickSort(items, i, right);
  if(left < j)
      quickSort(items, left, j);

}


           
       
Related examples in the same category
1.A Quicksort for stringsA Quicksort for strings
2.A Quicksort for filesA Quicksort for files
3.How to use sysmtem quick sortHow to use sysmtem quick sort
4.Sort: quicksort: how to use qsort
5.Quick sort on two dimensional string arrayQuick sort on two dimensional string array
6.Use the system quick sort
7.A Quicksort for structures of type address
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.