数组
import java.util.Arrays;//导入数组包 冒泡排序
public class Xh
{
publicstatic void main(String[] args)
{
//创建数组
int[]arr={5,2,8,2,11,9};
//外for循环变量i确定行数的取值范围
for(inti=0;i<arr.length;i++)
{
//内for循环变量j确定列数的取值范围,每确定一个数的位置则范围取值少一个.
for(intj=0;j<arr.length-i-1;j++)
{
//判断前一个数是否大于后一个数,大于则交换位置
if(arr[j]>arr[j+1])
{
inttemp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
//排序好的数组要放在循环外,避免重复打印排序过程
System.out.println(Arrays.toString(arr));
}
}
打印结果如下:
[2,2,5,8,9,11]
数组
import java.util.Arrays;//导入数组包 选择排序
public class Xh
{
publicstatic void main(String[] args)
{
//创建数组
int[]arr={8,3,12,3,7};
//外for循环确定变量i行的取值范围(考虑j的范围在arr.length减1)
for(inti=0;i<arr.length-1;i++)
{
//确定第一个位置的数为最小值
intmin=i;
//内for循环确定变量j列的取值范围
for(intj=i+1;j>=0;j--)
{
//判断第一个数大于后一个数,则交换下标继续往后作比较
if(arr[min]>arr[j])
{
min=j;
}
//判断当比较完确定了最小值,满足min!=i时,则交换位置
if(min!=i)
{
inttemp=arr[min];
arr[min]=arr[j];
arr[j]=temp;
}
}
}
//排序玩后的数组应放在for循环外.
System.out.println(Arrays.toString(arr));
}
}
打印结果:
[3,3,8,7,12]
数组
importjava.util.Arrays;//导入数组包 插入排序
publicclass Xh
{
public static void main(String[] args)
{
//创建数组
int[] arr={7,1,3,2,9};
//外for循环确定变量i行的取值范围
for(int i=0;i<arr.length;i++)
{
//内for循环确定变量j列的取值范围
for(int j=i;j>0;j--)
{
//判断条件成立交换位置
if(arr[j-1]>arr[j])
{
int temp=arr[j-1];
arr[j-1]=arr[j];
arr[j]=temp;
}
}
}
//打印数组应放在for循环外
System.out.println(Arrays.toString(arr));
}
}
打印结果:
[1,2,3,7,9]