您的位置 首页 java

Java中关于数组交换反转,逆序输出,一文直接上手四种做法

数组反转和逆序输出的思路:

1、数组反转的思路是:用0号元素和数组最后一个元素进行互换,然后分别继续互换到start(前一个元素下标)大于end(后一个元素下标)的时候停止互换,打印反转后的数组,这个思路可以应用到逆序输出

2、逆序输出直接从后面倒过来输出即可


做法1:

 int [] arr={11,22,33,44,55};
for (int i = 0; i < arr.length/2; i++) {
int temp=arr[i];
arr[i]=arr[arr.length-1-i]; //arr[arr.length-1-i] 相当于从后面开始访问回来的下标
arr[arr.length-1-i]=temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}  


做法2:

 int [] arr1={11,22,33,44,55};
for (int start = 0,end=arr1.length-1; start <end; start++,end--) { //进行数组元素互换,当start(下标)大于end(下标)的时停止互换元素
int temp =arr1[start];
arr1[start]=arr1[end];
arr1[end]=temp;
}
for (int i = 0; i < arr1.length; i++) {
System.out.println(arr1[i]);
}  


做法3(数组交换的第三种做法(其实本质也是第二种做法)比较好理解):

 int [] arr2={11,22,33,44,55};
int start=0;
int end=arr2.length-1;
while(start<=end){
int temp =arr2[start];
arr2[start]=arr2[end];
arr2[end]=temp;
start++;
end--;
}
for (int i = 0; i < arr2.length; i++) {
System.out.println(arr2[i]);
}  


做法4(直接逆序输出,从后面倒过来输出,可以提高一点点效率):

 int [] arr3={11,22,33,44,55};
for (int i=arr3.length-1;i>=0;i--){
System.out.println(arr3[i]);
}  


作者:今日头条 KJ丶JK / CSDN-KJ.JK

文章来源:智云一二三科技

文章标题:Java中关于数组交换反转,逆序输出,一文直接上手四种做法

文章地址:https://www.zhihuclub.com/175497.shtml

关于作者: 智云科技

热门文章

网站地图