Tech or Treat! Write an article about your scariest tech disaster to win gadgets!Learn more

x
?
Solved

quicksort for a string

Posted on 1997-12-10
11
Medium Priority
?
1,200 Views
Last Modified: 2012-08-14
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
Comment
Question by:fharris
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +5
11 Comments
 
LVL 1

Expert Comment

by:dhughes111797
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

by:rmichels
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

by:ozo
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
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 11

Expert Comment

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

BTW Ozo, you really should start marking your answers as "answer" instead of "comment".  People think that the question is still open.

0
 
LVL 11

Expert Comment

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

BTW Ozo, you really should start marking your answers as "answer" instead of "comment".  People think that the question is still open.

0
 
LVL 84

Expert Comment

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

Expert Comment

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

What more do you want?

0
 

Expert Comment

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

Expert Comment

by:LucHoltkamp
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

by:
braveheart earned 200 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

by:RONSLOW
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

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

This is a short and sweet, but (hopefully) to the point article. There seems to be some fundamental misunderstanding about the function prototype for the "main" function in C and C++, more specifically what type this function should return. I see so…
Examines three attack vectors, specifically, the different types of malware used in malicious attacks, web application attacks, and finally, network based attacks.  Concludes by examining the means of securing and protecting critical systems and inf…
The goal of this video is to provide viewers with basic examples to understand opening and reading files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use switch statements in the C programming language.

647 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question