合并排序序列

21、合并排序序列
merge-sorted-array: Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space to hold additional elements from B. The number of elements initialized in A and B are m and n respectively.
题设要求:给定两个排序的整数数组A和B,将B合并为A作为一个排序数组。
注意:您可以假设A有足够的空间来容纳B中的其他元素。A和B中初始化的元素数分别为m和n。
分析:题目中提到可以假设A有足够的空间来容纳B中的元素(没有消除重复元素之类的额外要求),则可以考虑将B中的元素添加到A中,然后对A进行排序即可。
代码如下:

import java.util.Arrays;

public class Solution{
    public static void main(String[] args) 
    {
    	Solution sl = new Solution();
    	int m=4;
    	int[] B= {4,5,6};
    	int n=B.length;
    	int[] A= new int[m+n];
    	A[0]=1;
    	A[1]=2;
    	A[2]=3;
    	A[3]=4;
    	sl.merge(A, m, B, n);
        for(int i=0;i<m+n;i++)
        {
        	System.out.print(A[i]);
        }
    }
    public void merge(int A[], int m, int B[], int n) 
    {
        for(int i=0;i<n;i++)
        {
        	A[m+i]=B[i];
        }
        Arrays.sort(A);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值