排序的稳定性
定义 稳定排序:如果原始序列中两个值相等的元素 A 和 B(满足 A = B),且 A 出现在 B 之前,排序后 A 仍然在 B 之前。 不稳定排序:排序后 A 和 B 的相对顺序可能发生改变。 示例 原始序列:[3, 2, 2*, 1] (2 和...
定义 稳定排序:如果原始序列中两个值相等的元素 A 和 B(满足 A = B),且 A 出现在 B 之前,排序后 A 仍然在 B 之前。 不稳定排序:排序后 A 和 B 的相对顺序可能发生改变。 示例 原始序列:[3, 2, 2*, 1] (2 和...
洗牌算法 | Fisher–Yates shuffle费雪耶茨算法(Fisher-Yates shuffle),用来将一个集合随机排列,常用在扑克洗牌,打乱抽奖奖池等场景中。 Fisher-Yates 洗牌算法是由 Ronald A.Fisher 和...
概述选择排序作为一种基础的比较排序算法,其思想早在计算机科学初期(20 世纪 50 年代)就被广泛使用。它没有单一的明确发明者,而是算法设计中自然形成的方法。名称源于算法重复”选择”最小(或最大)元素的特性。 虽然时间复杂度为 O(n²),但因其实现...
LeetCode Wiki (doocs.github.io) 小浩算法 (geekxh.com) labuladong 的算法笔记 wang· leetcode 图解 Java 数据结构和算法 | 数据结构与算法 系列教程(笔记) (zq992...