算法图解:选择排序
截图来自《算法图解》这本书
它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-70jor7gG-1659253112809)(https://xuemingde.com/pages/image/2022/07/18/20061658145726.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uwGWOWWE-1659253112812)(https://xuemingde.com/pages/image/2022/07/18/20181658145798.png)]
代码实现:
/**
* 从小到大排序
* @param ints
* @return
*/
public static int[] test(int[] ints){
for (int i = 0; i < ints.length -1; i++) {
int floor = ints[i];
for (int j = i + 1; j < ints.length - 1; j++) {
if (ints[j] < floor){
floor = ints[j];
ints[j] = ints[i];
ints[i] = floor;
}
}
}
return ints;
}