public class Beispiel14
{
   static int[] MischenArrays(int[] e, int[] f)
   {
      //neues Array für Ergebnis anlegen
      int[] g = new int[e.length + f.length];

      //Zum Merken der aktuellen Position in e und f
      int inde = 0;
      int indf = 0;

      //Füllen des Arrays g
      for(int i = 0; i < (e.length + f.length); i++)
      {
         //Test, ob der naechste Eintrag in g aus e oder f kommt
         if((inde >= e.length) || ((indf < f.length) && (e[inde] > f[indf])))
         {
            g[i] = f[indf];
            indf++;
         } 
         else
         {
            g[i] = e[inde];
            inde++;
         }
      }  

      return g;
   }

   static void PrintArray(int[] a)
   {
      for(int i = 0; i < a.length; i++)
      {
         System.out.print(a[i] + " ");
      }
      System.out.print("\n");
   }

   public static void main(String[] args)
   {
      int[] folge1 = {4,13,15,16,47,51,126,211};
      int[] folge2 = {6,8,9,21,35};
      
      PrintArray(folge1);
      PrintArray(folge2);

      int[] ergebnis = MischenArrays(folge1,folge2);

      PrintArray(ergebnis);
   }
}
