简述
比冒泡排序法更高效的排序方法,如果数组有 N 个元素,只须经过 N 次赋值,即可实现完全排序。
原理
该过程类似插秧,原始数据好比秧苗。首先取出第一株秧苗,直接栽在地里,第二柱与第一株比较,若较大则栽在第一株前面,反之栽在其后。对于所有秧苗来说,它只需要栽在它遇到的第一株比自己小的那株秧苗前面即可,若它最小,则它栽在最后。
代码
// 函数的参数 vecSource 为输入,函数的返回值为输出。
QVector<int> RicePlant(QVector<int> &vecSource)
{
QVector<int> vecResult;
vecResult.append(vecSource[0]);
for (int sourceIndex = 1; sourceIndex < vecSource.size(); sourceIndex++)
{