美文网首页
两个已排序数组的合并

两个已排序数组的合并

作者: mrjunwang | 来源:发表于2018-07-20 15:17 被阅读0次

    合并两个已排序数组,如果第一个数组末端有足够空间容纳另一个数组并要求额外空间为O(1)

    注意n用来指明数组a的有效元素的个数。

        public int[] mergeArray(int a[],int b[],int n){
            int fin=n+b.length-1;
            int i=n-1;
            int j=b.length-1;
            while(i>=0 && j>=0){
                if(a[i]>=b[j]){
                    a[fin]=a[i];
                    i--;
                    
                }
                else{
                    a[fin]=b[j];
                    j--;
                }
                fin--;
            }
            while(j>=0){
                a[fin--]=b[j--];
            }
            return a;
        }
    

    相关文章

      网友评论

          本文标题:两个已排序数组的合并

          本文链接:https://www.haomeiwen.com/subject/mfcqmftx.html