// 冒泡排序
public int[] bubble(int[] a) {
for (int i = 0; i < a.length-1; i++) {
// 相邻的两个数做比较,小的想上冒泡,-1防止数组下标越界
for (int j = 0; j < a.length-i-1; j++) {
if(a[j]>a[j+1]) {
int temp = a[j+1];
a[j+1] = a[j];
a[j] = temp;
}
}
}
return a;
}
// 插入排序
public int[] insert(int[] a) {
// 无序区
for (int i = 1; i < a.length; i++) {
// 有序区(随着i的增加从无序区插入数字到有序区)
for (int j = 0; j < i; j++) {
// 无序区插入数后进行排序
if (a[j] > a[j+1]) {
a[j + 1] = a[j];
}
}
}
return a;
}
// 选择排序
public int[] select(int[]a)
{
for(int i=0;i<a.length;i++)
{
//无序区的最小数据数组下标
int minIndex=i;
for(int j=i+1;j<a.length;j++)
{
//在无序区中找到最小数据并保存其数组下标
if(a[j]<a[minIndex])
{
minIndex=j;
}
}
//将最小元素放到本次循环的前端
int temp=a[i];
a[i]=a[minIndex];
a[minIndex]=temp;
}
return a;
}