Solved

# quicksort for a string

Posted on 1997-12-10
1,195 Views
I am going to have to quicksort through a list of transaction codes (strings) putting them in ascending order...I want to know how you can do this as the version of the quicksort algorithm that I have sorts only a single string of characters or integers.
0
Question by:fharris
• 2
• 2
• 2
• +5

LVL 1

Expert Comment

ID: 1256579
what OS are you using? I would be surprised if there was
an implementation of quicksort that only worked on a single
string and not an array of <whatever>
The qsort builtin on Solaris and SunOS will do this just fine.
0

LVL 3

Expert Comment

ID: 1256580
most sorts I have see provide a call back function that allows YOU to do the comparison.  I assume your list of strings is an array of pointers to strings?

I don't have an example of a quick sort though

0

LVL 84

Expert Comment

ID: 1256581
You say you want to sort a list of strings, char *list[];
but quicksort only sorts a single string, char *string; ?
I'm confused.  Are you trying to do something like this:

#include <stdlib.h>
#include <string.h>
char *list[]={"transaction2","transaction0","transaction1"};
int cmp(const void *a, const void *b){
return strcmp(*(char **)a,*(char **)b);
}
qsort(list,sizeof(list)/sizeof(list[0]),sizeof(list[0]),cmp);

0

LVL 11

Expert Comment

ID: 1256582
Some informal testing that I've done showed that radix sort is faster on strings than the standard qsort().

0

LVL 11

Expert Comment

ID: 1256583
Some informal testing that I've done showed that radix sort is faster on strings than the standard qsort().

0

LVL 84

Expert Comment

ID: 1256584
I think the question is still open.
I still don't quite know what the question is.
0

LVL 10

Expert Comment

ID: 1256585
sounds to me that 'qsort' is all that required.

What more do you want?

0

Expert Comment

ID: 1256586
what do you want to do by example ?
0

LVL 3

Expert Comment

ID: 1256587
Ozo has an answer, but what do you really want. What datastructure are you using (Linked list, array of char*). The sortingmethode depends on the datastructure.
BTW Please react to our efforts.
.luc.
0

LVL 3

Accepted Solution

braveheart earned 100 total points
ID: 1256588
You might like to consider storing the strings in a binary tree, especially if you are going to add (or delete) entries after the initial session.
0

LVL 10

Expert Comment

ID: 1256589
Looks like fharris just ain't listening - or (s)he's listening and not talking.

This sort of attitude doesn't encourage experts to want to help

0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question