首页 > 代码库 > CC150 - 11.1

CC150 - 11.1

Question:

You are given two sorted arrays, A and B, where A has a large enough buffer at the end to hold B.
Write a method to merge B into A in sorted order.

 

package POJ;public class Main {    /**     *      * 11.1 You are given two sorted arrays, A and B, where A has a large enough buffer at the end to hold B.     * Write a method to merge B into A in sorted order.     *      */    public static void main(String[] args) {        Main so = new Main();        }        public void merge(int[] a, int[] b, int lastA, int lastB){        int indexA=lastA-1;        int indexB=lastB-1;        int indexMerged=lastA+lastB-1;        while(indexA>=0&&indexB>=0){            if(a[indexA]<b[indexB]){                a[indexMerged]=b[indexB];                indexB--;                indexMerged--;            }else{                a[indexMerged]=a[indexA];                indexA--;                indexMerged--;            }        }        while(indexB>=0){            a[indexMerged]=b[indexB];            indexB--;            indexMerged--;        }    }}