要考虑到2种情况
1、原始数组长度为偶数---------则,分成的2个数组长度一样
2、原始数组长度为奇数--------则,2个数组中,有一个数组多1个
完整代码如下:
package text;public class Text {public static void main(String[] args) {//第一步:创建一个示例数组,长度假设为101int[] first0=new int[101];//第二步:依次将1-101放入数组for(int i=0;i<first0.length;i++){first0[i]=i+1;}//第三步:获取示例数组长度int FLength=first0.length;//第四步:假设分成的两个数组长度分别为half1和half2int half1=1;int half2=1;//判断:假如示例数组长度为奇数,则后两个数组中第一个数组多一个if(FLength%2!=0){half1=(FLength+1)/2;half2=half1-1;}//判断:假如示例数组元素个数为偶数,则结果的2个数组长度一致if(FLength%2==0){half1=FLength/2;half2=half1;}//第五步:新建结果数组int left[]=new int[half1];int right[]=new int[half2];//第六步:分不同情况,将原始示例数组的前半部分和后半部分分别装入结果数组中if(FLength%2!=0){for(int i=0;i<half1;i++){left[i]=first0[i];}for(int i=half1,j=0;i<first0.length;i++,j++){right[j]=first0[i];}}else{for(int i=0;i<half1;i++){left[i]=first0[i];}for(int i=half1,j=0;i<first0.length;i++,j++){right[j]=first0[i];}}//第七部:输出结果数组,检查是否与预期结果一致for(int i=0;i<left.length;i++){System.out.PRint(left[i]+",");}System.out.println();for(int i=0;i<right.length;i++){System.out.print(right[i]+",");}}}新闻热点
疑难解答