:) Sorry SharK, it comes with this post now.

For all non-Win2000-users: I've uploaded the current version in the first post. Now stack overflow exceptions are handled and displayed (occures when executing Quicksort with ascending or descending elements and with circa >= 50.000 elements). Thanks to stormix.

Regards, Marwin
Posted on 2004-04-28 16:52:15 by Marwin
This one (bucketsort) claims to be 10 times faster then the fastest here (you can use it for example for sorting of unsigned integers ) and a pointer (Struct of 2 dwords) and it is linear (my measurements show that it is for sure faster, roughly 6 times)

http://www.ntecs.de/old-hp/s-direktnet/Data/Algorithmen/_bucket.asm

http://www.ntecs.de/old-hp/s-direktnet/Data/Algorithmen/bucket.hpp

VShader
Posted on 2004-04-29 02:51:39 by VShader
Thank you VShader,

I already thought about implementing Binsort (another name for Bucketsort or "Sortieren durch Fachverteilung"). I can't imagine that it's 10 times faster but we'll see it.

and it never returns from the call to that API:

:stupid: Yes, of course. This API function creates the dialog from the resource. It only returns when the dialog is ended. If the previous main.exe won't work, please do not trace over, but trace into DialogBoxParam. Only if you have the time and the will, of course.

Regards, Marwin
Posted on 2004-04-29 04:50:47 by Marwin
bitRAKE,

today I have found the time to run the algos on my computer to give a comparison to your results. I have tested it twice: under WinXP HE and under Win98 SE. With ascending and descending elements there are no visible differences in speed.
Shellsort needed nearly 6 seconds more under Win98 than under WinXP whereas 2-Way Mergesort needed 5 seconds fewer under Win98 than under WinXP.

Regards, Marwin
Posted on 2004-04-29 07:33:33 by Marwin
marwin, if you want semi-reliable timings, raise process+thread priority to realtime - before doing this, I should of course warn you that it will "lock up" your machine until the test is done.
Posted on 2004-04-29 08:41:49 by f0dder
Yes, that's right f0dder. And this is the point that prevents me from increasing the priority.

Regards, Marwin
Posted on 2004-04-29 09:03:23 by Marwin
Hi Marwin

The program still crashes - (The memory could not be "read") :(
Posted on 2004-04-29 15:36:41 by The SharK
Okay, thank you SharK. Next week I'll have access to a Win2000 computer. I'll try to fix this bug then.

:( Marwin
Posted on 2004-04-30 02:57:18 by Marwin
this program is wonderful!!!

its fantastic for teaching purposes!


congratulations!

very good work!
Posted on 2004-04-30 12:35:32 by HeLLoWorld
I thank you HeLLoWorld. When developing this program I never thought that it would be rated so good (except the Win2000 users) like I read it here.

Regards, Marwin
Posted on 2004-04-30 13:57:58 by Marwin
okay!this program ! I like it.

(from Chinese)
Posted on 2004-05-02 11:11:53 by ostream
from china
Posted on 2004-05-02 11:12:30 by ostream
Thank you ostream!
I have fixed the Win2000 bug. It runs now on the machine I had access to. The SharK, if you have the time please test it on your PC, too

I do apologize for this bug. The new version can be downloaded from the first post.

Regards, Marwin
Posted on 2004-05-12 09:59:05 by Marwin
What was the 2k bug, marwin?
Posted on 2004-05-12 10:52:55 by f0dder
Register preservation in the dialog procedures. After using 'USES ebx edi esi' the problem was solved.

Marwin
Posted on 2004-05-12 13:18:13 by Marwin
Hi Marwin

The SharK, if you have the time please test it on your PC, too


It works fine now on my Win2k, thanks :alright:
Posted on 2004-05-12 13:45:02 by The SharK
That are good news :tongue:

Marwin
Posted on 2004-05-12 14:11:58 by Marwin