什么样的名字意味着什么? 我知道选择排序是如何工作的,但我无法理解为什么选择排序是选择排序。(插入排序,冒泡排序都相同) 请让我知道!
答案 0 :(得分:3)
选择排序重复查找并选择最小值来构造排序输出。
重复插入排序将下一个值插入到已排序的子数组中。
通过比较和交换相邻元素,冒泡排序气泡(:|)元素。
更具体地说:
选择sort搜索整个数组以在每一步找到最小值,因此它立即构造最终输出(不需要移动任何东西,比如插入排序)。
对于4 5 3 7 1 8
,我们首先选择最小的元素(1
)并将其置于第一个位置,然后我们将选择下一个最小的元素({{ 1}})并将其放在第二个位置,等等。
插入排序按照它们在未排序数组中出现的顺序处理元素,将每个下一个元素插入到已排序部分的正确位置,方法是移动其他元素以为其腾出空间。
对于3
,我们首先说4 5 3 7 1 8
是我们的排序数组,然后插入4
(我们不需要做任何事情),然后插入5
(包括转移3
和4
以腾出空间)等。
冒泡排序仅比较和交换相邻元素。
你可以说选择排序确实是插入和插入排序选择,但这些部分相当简单(在最后插入并选择下一个元素) - 选择和插入部分更重要在具有相应名称的算法中。
冒泡排序有点混乱,所以我不会真的说那里有插入或选择。