选择排序是一种对数据进行排序的算法,这篇文章简单讲一下我对选择排序的排序原理的理解。
选择排序的基本思想是选择最小的数依次放到数组的开始,通过循环对数组的遍历从而实现对数据的排序。
首先就是需要一个函数,他的形参分别是数组与数组元素的个数。首先用i进行最外层的循环,即每次选择一个元素并将它放到最后应在的位置上。所以假设数组有n个元素,那么就需要将n-1个元素都排好,那么最后剩下的那一个元素也一定就在它最后应在的位置上。而后进入到对元素的移动层循环,首先将循环开始的第一个元素设置为最小项,然后向后遍历数组,将它之后的每个元素与它进行比较,如果遇到比初始设置的最小项还小的项,就将最小项设置为这个新找出的最小数。意思就是从开始的元素(包含这个元素自身)向后寻找,找到最小项后,如果这个值不是循环开始时设置的值,那么就将最小项与循环开始时的第一项进行交换,也就是依次将最小值移到数组的开始。
代码的实现就如下图所示
这也就是我个人理解的选择排序的原理,希望能对大家学习选择排序有所帮助。