Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the zsort Reference Manual, version 0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 06:14:14 2022 GMT+0.
Next: Systems, Previous: The zsort Reference Manual, Up: The zsort Reference Manual [Contents][Index]
zsort is a collection of portable sorting algorithms. Common lisp provides the sort and stable-sort functions but these can have different algorithms implemented according to each implementation. Also, the standard sorting function might not be the best for a certain situation. This library aims to provide developers more options. Although for most situations the standard functions are more than enough, zsort could be a useful complement.
The following comparison based algorithms are implemented:
At the moment, only one non-comparison algorithm is implemented:
zsort is available via Quicklisp and that is the preferable method of installation. To use it, first load Quicklisp in your Common Lisp implementation and then evaluate (ql:quickload "zsort")
All comparison sorts have the same syntax (<sort> sequence predicate &key key)
and return a sorted sequence. All the functions sort destructively, i.e., keep a copy of the unsorted sequence if you wish to keep it.
Counting sort only accepts sequences without key data and can be sorted in ascending or descending order, according to the value of the :ascend
key (t for ascending and nil for descending).
Although zsort accepts list sequences, the algorithms are expected to work on vectors/arrays. A specialized sort for lists will be included in the future.
CL-USER> (zsort:quicksort #(4 5 7 3 9 2 4 2 0 8 2 4 1 5 9) #'<)
#(0 1 2 2 2 3 4 4 4 5 5 7 8 9 9)
CL-USER> (zsort:merge-sort #((4 5) (7 3) (9 2) (4 2) (0 8) (2 4) (1 5) (9 1)) #'> :key #'first)
#((9 2) (9 1) (7 3) (4 5) (4 2) (2 4) (1 5) (0 8))
CL-USER> (zsort:counting-sort #(4 5 7 3 9 2 4 2 0 8 2 4 1 5 9) :ascend t)
#(0 1 2 2 2 3 4 4 4 5 5 7 8 9 9)
The following is planned for zsort:
zsort is available under an MIT-style license. See the LICENSE file.
Next: Files, Previous: Introduction, Up: The zsort Reference Manual [Contents][Index]
The main system appears first, followed by any subsystem dependency.
zsort is a collection of portable sorting algorithms.
Jorge Tavares <jorge.tavares@ieee.org>
MIT
0.1
alexandria (system).
Next: Packages, Previous: Systems, Up: The zsort Reference Manual [Contents][Index]
Files are sorted by type and then listed depth-first from the systems components trees.
Next: zsort/base.lisp, Previous: zsort/zsort.asd, Up: Lisp [Contents][Index]
Next: zsort/insertion-sort.lisp, Previous: zsort/packages.lisp, Up: Lisp [Contents][Index]
packages.lisp (file).
zsort (system).
sort-dispatch (macro).
Next: zsort/quicksort.lisp, Previous: zsort/base.lisp, Up: Lisp [Contents][Index]
base.lisp (file).
zsort (system).
insertion-sort (function).
insertion-sort-body (macro).
Next: zsort/merge-sort.lisp, Previous: zsort/insertion-sort.lisp, Up: Lisp [Contents][Index]
insertion-sort.lisp (file).
zsort (system).
Next: zsort/heapsort.lisp, Previous: zsort/quicksort.lisp, Up: Lisp [Contents][Index]
quicksort.lisp (file).
zsort (system).
merge-sort (function).
Next: zsort/counting-sort.lisp, Previous: zsort/merge-sort.lisp, Up: Lisp [Contents][Index]
merge-sort.lisp (file).
zsort (system).
heapsort (function).
Previous: zsort/heapsort.lisp, Up: Lisp [Contents][Index]
heapsort.lisp (file).
zsort (system).
counting-sort (function).
counting-sort-body (macro).
Next: zsort/LICENSE, Previous: Static, Up: Static [Contents][Index]
counting-sort.lisp (file).
zsort (system).
Next: Definitions, Previous: Files, Up: The zsort Reference Manual [Contents][Index]
Packages are listed by definition order.
zsort is a collection of portable sorting algorithms.
common-lisp.
Next: Indexes, Previous: Packages, Up: The zsort Reference Manual [Contents][Index]
Definitions are sorted by export status, category, package, and then by lexicographic order.
Next: Internals, Previous: Definitions, Up: Definitions [Contents][Index]
Previous: Public Interface, Up: Public Interface [Contents][Index]
Previous: Public Interface, Up: Definitions [Contents][Index]
Next: Ordinary functions, Previous: Internals, Up: Internals [Contents][Index]
Previous: Definitions, Up: The zsort Reference Manual [Contents][Index]
Jump to: | B C F H I M Q R S |
---|
Jump to: | B C F H I M Q R S |
---|
Jump to: | B C F H I L M P Q R S Z |
---|
Jump to: | B C F H I L M P Q R S Z |
---|