归并排序

    技术2022-05-20  53

    package DiGui;/** * 归并排序 * 前提是先给出的两个数组必须有序 * @author tinyboy * */public class MergerApp { public static void main(String[] args) {  // TODO Auto-generated method stub      int[] arrayA={23,47,91,95};      int[] arrayB={7,14,39,55,62,74};      int[] arrayC=new int [10];      merge(arrayA,4,arrayB,6,arrayC);      display(arrayC,10); } public static void merge(int [] arrayA,int sizeA,int [] arrayB,int sizeB,int []arrayC){  int aDex=0,bDex=0,cDex=0;  while(aDex<sizeA&&bDex<sizeB){  if(arrayA[aDex]<arrayB[bDex])   arrayC[cDex++]=arrayA[aDex++];  else   arrayC[cDex++]=arrayB[bDex++];  }  // arrayB走完了,只剩下arrayA数组的时候  while(aDex<sizeA)   arrayC[cDex++]=arrayA[aDex++];  while(bDex<sizeB)   arrayC[cDex++]=arrayB[bDex++]; } public static void display(int[] theArray,int size){  for(int i=0;i<size;i++)   System.out.print(theArray[i]+" ");  System.out.println(" "); }}


    最新回复(0)