选择排序:
是一种简单直观的排序算法。其工作原理是每一次从待排序序列中选出最小(或最大)的一个元素,存放至序列起始位置,直到整个序列达到有序状态。选择排序是不稳定的排序方法,其时间复杂度为O(N^2)。
步骤:
设数组a[0…n-1]:
1、初始时,数组为全无序状态。令i=0,选择最小的元素交换至a[0];
2、当有序区为a[0…i-1],无序区为a[i…n-1],在无序区选取最小元素交换至a[i],则
形成a[0…i]为有序区,a[i+1…n-1]为无序区;
3、i++并重复2操作,使得i=n,排序结束,整个序列为有序状态。
根据直接定义有:
数据交换函数(不使用中间变量交换数据)1:
数据交换操作(不使用中间变量交换数据)2:
数据交换3,使用中间变量