网站建设购买,app开发长沙,自己的电脑可以做网站服务器,简述网站一般建设的流程图题目描述
将两个有序数组按照大小顺序复制成一个数组
实现思路 创建新的数组#xff0c;长度为要复制的两个数组长度之和定义3个初始变量i,p1,p2在循环中依次比较两个数组中元素大小#xff0c;小的放入新数组若p1小于ns1的长度#xff0c;则说明在上面while循环中ns1的元…题目描述
将两个有序数组按照大小顺序复制成一个数组
实现思路 创建新的数组长度为要复制的两个数组长度之和定义3个初始变量i,p1,p2在循环中依次比较两个数组中元素大小小的放入新数组若p1小于ns1的长度则说明在上面while循环中ns1的元素没有全部放进ns3中需从i的位置开始放入p1剩下的元素若p2小于ns2的长度则说明在上面while循环中ns2的元素没有全部放进ns3中需从i的位置开始放入p2剩下的元素 运行代码如下
import java.util.Arrays;
public class m4 {public static void main(String[] args) {int[] ns1 {2,4,6,8};int[] ns2 {1,3,5,7,9,10,13,14,34};//创建新数组长度为上面两个数组长度之和int[] ns3new int[ns1.lengthns2.length];int i0,p10,p20;while(p1ns1.lengthp2ns2.length) {if(ns1[p1]ns2[p2]) {ns3[i]ns1[p1];}else{ns3[i]ns2[p2];}}if(p1ns1.length) {System.arraycopy(ns1,p1,ns3,i,ns1.length-p1);}else if(p2ns2.length) {System.arraycopy(ns2,p2,ns3,i,ns2.length-p2);}System.out.println(Arrays.toString(ns3));}
} 代码执行结果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 14, 34]