2002-09-10 09:21 edward * Merge.pm: Documentation changes. 2002-09-10 09:03 edward * Merge.pm: Removed trace statements; added documentation. 2002-09-10 07:18 edward * test.pl: A test suite comparing against concatenate-and-sort(). This also shows that mergesort() is much much slower, despite its theoretical performance advantage. With very long input lists, and few of them, it should win - but I haven't been able to construct such a benchmark because it would take a long time to run. 2002-09-10 06:33 edward * Merge.pm: First version. It appears to work but is not thoroughly tested. This n-way merge sort works by keeping a 'pool' of the lowest element in each input list, and after the lowest element of the pool is removed and output, the pool is topped up with insertion sort. This should have time complexity O((n + m)(log n)), where m is the length of each input list - but I suspect I calculated this wrongly. Anyway, some benchmarks should show whether it runs faster than concatenate-then-sort on some nice big inputs. To implement the merge sort I needed to write an insertion sort - which was the most difficult part of the exercise :-(. 2002-09-10 06:27 edward * MANIFEST.SKIP: Tell 'make distclean' not to worry about CVS/ directories and other junk. 2002-09-10 04:15 edward * MANIFEST, Makefile.PL, Merge.pm, README, test.pl: New Sort::Merge Perl module. Importing skeleton directory created by h2xs. 2002-09-10 04:15 edward * MANIFEST, Makefile.PL, Merge.pm, README, test.pl: Initial revision 2002-09-09 22:29 ed * README: Replaced stub README with real one.