/*利用冒泡排序对数组进行排序,不过使相邻的数组元素进行比较,互换位置*/
class Demo
{
public static void main(String[] args)
{
int[]arr={6,3,8,4,9,1,0};
shao_1(arr);
shao(arr);
shao_1(arr);
}
public static void shao(int[]arr) //封装函数,冒泡排序
{
for (int x=0;x<arr.length-1; x++)
{
for (int y=0;y<arr.length-x-1 ;y++ )
{
if (arr[y]>arr[y+1])
{
int arr[y]=arr[y]^arr[y+1]; //兄弟建议你把这个int去掉. arr[y] 就已经是个整型数组了,你这里再定义有点多余. 如果你真的还需要再定义的话int arr[y] y的值也要重新定义,for循环里的变量是局部的.局部变量运算完内存就释放了.
arr[y+1]=arr[y]^arr[y+1];
arr[y]=arr[y]^arr[y+1];
}
}
}
}
public static void shao_1(int[]arr)
{
System.out.print("[");
for(int x=0;x<arr.length;x++)
{
if (x!=arr.length-1)
System.out.print(arr[x]+",");
else
System.out.println(arr[x]+"]");
}
}
}
|