黑马程序员技术交流社区

标题: 自学第四天关于数组排序的总结 [打印本页]

作者: 牛德阳    时间: 2015-12-13 22:40
标题: 自学第四天关于数组排序的总结
  1. package day04;

  2. import java.util.Arrays;

  3. public class arryDemo1
  4. {
  5.         public static void main(String[] args) {
  6.         int arr[]=new int[]{1,2,4,3,5,6};
  7.         //打印排序前的数组
  8.         printarr(arr);
  9.         //打印排序后的数组
  10.         //sortArr(arr);
  11.         Arrays.sort(arr);//开发中使用的方法
  12.         printarr(arr);
  13.        
  14.        

  15. }

  16.        
  17.         //数组排序的方法1选择排序,采用嵌套循环依次比较,互换位置;内循环结束一次,最值出现在零角标位置
  18. /*public static void sortArr(int arr[])
  19. {
  20.         for(int i=0;i<arr.length;i++)
  21.         {
  22.                 for(int j=i+1;j<arr.length;j++){
  23.                        
  24.                 if(arr[i]>arr[j])
  25.                 {
  26.                         swap(arr,i,j);
  27.         }
  28.                 }    }
  29. }*/
  30. //数组排序的方法2冒泡排序,采用嵌套循环,比较相邻位置,互换位置;内循环结束一次,最值出现在最后位
  31. /*public static void sortArr(int arr[])
  32. {
  33.         for(int i=0;i<arr.length-1;i++)
  34.         {
  35.                 for(int j=0;j<arr.length-i-1;j++){
  36.                        
  37.                 if(arr[j]>arr[j+1])
  38.                 {
  39.                         swap(arr,j,j+1);
  40.         }
  41.                 }    }
  42. }*/
  43. //以上两种方法都有位置置换,可以把相同的代码提取出来,单独封装成一个函数

  44. /*public static void swap(int[] arr,int a,int b){
  45.         int temp=arr[a];
  46.         arr[a]=arr[b];
  47.         arr[b]=temp;
  48. }*/
  49. //打印数组的方法
  50. public static void printarr(int[] arr){
  51.         System.out.print("[");
  52.         for(int i=0;i<arr.length;i++){
  53.                 if(arr[i]!=arr[arr.length-1]){
  54.                         System.out.print(arr[i]+",");
  55.                 }
  56.                 else{
  57.                         System.out.print(arr[i]+"]");
  58.                 }
  59.                                
  60.         }
  61. }

  62. }

复制代码






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2