Sorting --- Extensions, general issues, and questions
  1. A stable sort is one in which records with the same key value are guaranteed to appear in the final list in the order in which they appeared in the original. Any sort can be made stable by adding the original position as an extra field to each record, and using this as a tiebreaker. The more interesting question is: which of the above sorts are stable, or can easily be made stable, without adding additional information to records.
  2. Additional information about the distribution of keys, or about the current and correct positions of records in the original list, can affect which sorts behave reasonably. Which sorts (either from the above list, or designed for the special case) are effective in each of the following cases?
  1. A sorting technique is incrementalizable if it can
  1. Movement of records is particularly expensive.