黑马程序员技术交流社区
标题:
自学第四天关于数组排序的总结
[打印本页]
作者:
牛德阳
时间:
2015-12-13 22:40
标题:
自学第四天关于数组排序的总结
package day04;
import java.util.Arrays;
public class arryDemo1
{
public static void main(String[] args) {
int arr[]=new int[]{1,2,4,3,5,6};
//打印排序前的数组
printarr(arr);
//打印排序后的数组
//sortArr(arr);
Arrays.sort(arr);//开发中使用的方法
printarr(arr);
}
//数组排序的方法1选择排序,采用嵌套循环依次比较,互换位置;内循环结束一次,最值出现在零角标位置
/*public static void sortArr(int arr[])
{
for(int i=0;i<arr.length;i++)
{
for(int j=i+1;j<arr.length;j++){
if(arr[i]>arr[j])
{
swap(arr,i,j);
}
} }
}*/
//数组排序的方法2冒泡排序,采用嵌套循环,比较相邻位置,互换位置;内循环结束一次,最值出现在最后位
/*public static void sortArr(int arr[])
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=0;j<arr.length-i-1;j++){
if(arr[j]>arr[j+1])
{
swap(arr,j,j+1);
}
} }
}*/
//以上两种方法都有位置置换,可以把相同的代码提取出来,单独封装成一个函数
/*public static void swap(int[] arr,int a,int b){
int temp=arr[a];
arr[a]=arr[b];
arr[b]=temp;
}*/
//打印数组的方法
public static void printarr(int[] arr){
System.out.print("[");
for(int i=0;i<arr.length;i++){
if(arr[i]!=arr[arr.length-1]){
System.out.print(arr[i]+",");
}
else{
System.out.print(arr[i]+"]");
}
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2