Board logo

标题: Java递归思想倒置数组 [打印本页]

作者: look_w    时间: 2019-1-18 19:28     标题: Java递归思想倒置数组

public class ReverseArry { public static void main(String[] args){ int[] arr = {1,2,3,4,5,6,7,8,9}; //System.out.println(arr.length); reverseArry(arr,0,arr.length-1); show(arr); } /*将n个问题的规模分解,第一次先将头尾两个交换即swap(lo,hi) 剩下n-2的规模,面临的问题还是一样,采用递归的思想不断地减小 问题的规模(减而治之) * */ public static void reverseArry(int[] A, int lo, int hi){ if (lo > hi || lo == hi){//问题规模的奇偶性不变,因为每次减少两个大小 return; } if(lo < hi){ swap(A, lo, hi); } reverseArry(A, ++lo, --hi);//递归一次,规模就缩小两个 } public static void swap(int[] a, int i, int j){ int temp = a[i]; a[i] = a[j]; a[j] = temp; } public static void show(int[] A){ for(int i = 0; i < A.length; i++){ System.out.print(A[i]+" "); } } }




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0