The third homework includes Using CLISP and recursion reimpl
Solution
On top of what was already said about arrays vs lists, there isn\'t such thing as \"fastest\" sort algorithm. This ultimately depends on what data are you sorting. Some algorithms will perform better on collections containing similar values, while others will perform better on collections that contain nearly sorted values.
In practice, there may be other complications, like, additional conses created during sorting or additional memory allocated during array sorting. Something that would necessitate a call to GC, which might absolutely turn over the tides.
Whenever you have a particular practical problem that requires sorting, you need to consider the circumstances and what kind of data you will be dealing with. For example, sorting of Z-vertices in a 3-dimensional space while rendering animations would probably most benefit from an algorithm that operates on linked lists and nearly sorted data, sorting of the meteorological research data will likely benefit from an algorithm that deals best with previously unsorted mostly unique data. Some particular software can do vectorized insertion sorting which will be many times faster then any single value per operation algorithm, and so on.
Sorting a collection of random numbers is usually a poor indicator of how your code will perform on actual data.

