要求,对数组arr[]进行冒泡法排序。
思路:
1,用第一个元素,和第二个元素相比,将结果大的数放在第二个元素,然后用第二个元素和第三个元素相比,将结果大的放在第三个元素里,依次类推,用倒数第二个元素和倒数第一个相比,将结果大的放到倒数第一个里。这样下来,最后的一个,就是最大的数。
2,还是用第一个元素和第二相比,只不过,比到倒数第二个就停止,最后最大的数放在倒数第二个元素中。
3,依次类推,最后第一个元素和第二个元素相比。大的放在第二个元素中。
至此,排序完毕。
实现代码:
---------------------------------------------------------------------------------------------
class temp2
{
public static void main(String[] args)
{
int arr[]={3,7,6,2,5,1,4,9,8,3};//定义一个无序数组
for (int x=0;x<arr.length ;x++ )//遍历并打印数组原值
{
System.out.print(arr[x]);
}
System.out.println();//换行
maopao(arr);//调用xuanze进行排序
for (int x=0;x<arr.length ;x++ )//打印排序后的值
{
System.out.print(arr[x]);
}
}
public static void maopao(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 temp;
temp=arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
}