选择排序(SelectSort)是一种简单直观的排序算法。其基本思想是:首先在未排序的数组中找到最小(最大)的元素,然后将其存放到数组的起始位置;接着,再从剩余未排序的元素中继续寻找最小(最大)元素
选择排序(Select Sort)是一种简单直观的排序算法。其基本思想是:首先在未排序的数组中找到最小(最大)的元素,然后将其存放到数组的起始位置;接着,再从剩余未排序的元素中继续寻找最小(最大)元素,然后放到已排序序列的末尾,以此类推,直到所有元素均排序完成。废话不多说,直接上代码,用C语言实现,代码可能不是最简洁的,关键是理解其实现过程。
选择排序
复杂度
时间复杂度:O(n?)
空间复杂度:O(1)
稳定性:选择排序算法是不稳定的排序算法,因为没有办法保证值相等的元素的相对位置不变。
优化:选择排序的核心是在每次比较重,找到本次重最小的元素放在本次比较的第一个位置,所以选择排序的每次比较只需要交换一次即可,只要找到本次比较重最小的元素和本次比较中第一个位置的元素交换即可。
本站部分文章来自网络或用户投稿,如无特殊说明或标注,均为本站原创发布。涉及资源下载的,本站旨在共享仅供大家学习与参考,如您想商用请获取官网版权,如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。