Skip to content

排序规则定义与推论

规则定义

在排序过程中,比较两个元素 ab 的相对位置时,遵循以下规则:

  1. 如果 a - b < 0,则 a 排在 b 前面(实现递增排序)。
  2. 如果 a - b > 0,则 a 排在 b 后面。
  3. 如果 a - b == 0,则 ab 的顺序保持不变。

推论

为了避免直接比较 ab 的大小关系(容易绕晕),可以转换为比较“左”和“右”的相对位置关系:

  • 左 - 右 < 0:最终位置“左”在前,无需调换位置。
  • 左 - 右 > 0:最终位置“右”在前,需要调换位置。
    (注意:调换位置后,原来的“左”变为“右”,原来的“右”变为“左”。)

关键点
无论是否调换位置,最终结果一定满足 左 < 右(递增顺序)。

递减排序的推论

如果要实现递减排序,比较逻辑改为 b - a(即“右 - 左”):

  1. 如果 右 - 左 < 0,最终“右”在前,无需调换位置。
  2. 如果 右 - 左 > 0,最终“左”在前,需要调换位置。
    最终结果满足 右 < 左(递减顺序)。

统一记忆方法

无论比较的是“左 - 右”还是“右 - 左”,小于 0 时位置关系不变。根据这一基准:

  • 左 - 右 < 0 → 左 < 右(递增)。
  • 右 - 左 < 0 → 右 < 左(递减)。