反转排序 自我经典理解

来源:互联网 发布:js实现二级菜单导航 编辑:程序博客网 时间:2024/06/05 10:09
public class ReverSort1 {


public static void main(String[] args){

int array[]={11,22,33,44,55,66,77};
ReverSort1  sort=new ReverSort1();

sort.serter(array);


}


/**
* 反转排序
* @param array
*/
private void serter(int[] array) {
      System.out.println("数组原有内容:  ");  
showArray(array);
 int temp;
 int len=array.length;

 System.out.println(len);
 for(int i=0;i<len/2;i++){

 System.out.println(array[i]);
         //为什么这里是array[i],因为array[i]就是数组里面第一个数,数组是有下标的,
 //下标又是从0开始的
 temp=array[i];
  System.out.println(array[len-1-i]);
 //如果第一个是array[0],那么最后一个就是array[len-1-0]
  //array[len-1]是最后一个
  //如果第二个是array[1],那么最后一个就是array[len-1-1]
  //array[len-1-1]才倒数第二个
  //而反转排序的精华就是把前后从新调换顺序,
  //所以只需要调换数组长度的1/2
  array[i]=array[len-1-i];
     array[len-1-i]=temp;
 
 }
System.out.println("数组反转后内容 : ");
showArray(array);
}


private void showArray(int[] array) {
 for(int i:array){
 System.out.print("\t"+i);
 }
System.out.println();
}
}
0 0
原创粉丝点击