黑马程序员 java学习笔记(day02)

来源:互联网 发布:kali 访问windows共享 编辑:程序博客网 时间:2024/05/18 01:47

------- android培训java培训、期待与您交流! ----------

 

    今天学习了几种排序的方法,主要是选择排序和冒泡排序,两种排序的思想不同,从不同的角度

给数组进行排序。
 1 选择排序。
 内循环结束一次,最值出现头角标位置上。
 public static void selectSort(int[] arr)
 {
  for (int x=0; x<arr.length-1 ; x++)
  {
   for(int y=x+1; y<arr.length; y++)
   {
    if(arr[x]>arr[y])
    {
     
     int temp = arr[x];
     arr[x] = arr[y];
     arr[y]= temp;
     
     
    }
   }
  }

 }
 2 冒泡排序。
 public static void bubbleSort(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 = arr[y];
     arr[y] = arr[y+1];
     arr[y+1] = temp;
     
     
    }
   }
  }
 }

 看了以上两种排序,可以推出所有排序都应该有相似的代码
 int temp = arr[x];
 arr[x] = arr[y];
 arr[y]= temp;
 所以我们可以把这部分相同的代码提取出来,单独封装成一个函数。
 public static void swap(int[] arr,int a,int b)
 {
  int temp = arr[a];
  arr[a] = arr[b];
  arr[b] = temp;
 }
 这样在多个排序存在时可以提高代码的复用性,简化了代码的书写。

 

0 0
原创粉丝点击