2017-03-09 145 views

回答

1

的所有值複製另一個數組你需要做遞歸。我編寫了一些能夠讓你走向正確方向的東西。這也許是工作,但我沒有測試它:

public static void main(String[] args) { 
     int[] a1 = new int[]{2,3,4}; 
     int[] a2 = new int[]{1,2,2,3,4,4,3,5,6,7}; 
     recursion(a1,a2, new String()); 
    } 

    public static void recursion(int[] a1, int[] a2, String soFar){ 
     int toSearch = a1[0]; 
     for(int i=0;i<a2.length;i++){ 
      if(a2[i] == toSearch){ 
       if(a1.length>1) { 
        int[] a1b = new int[a1.length - 1]; 
        for (int j = 1; j < a1.length; j++) { 
         a1b[j - 1] = a1[j]; 
        } 
        recursion(a1b, a2, soFar+ "a2["+i+"]"); 
       } 
       else { 
        System.out.println(soFar+ "a2["+i+"]"); 
       } 
      } 
     } 
    } 

輸出是:

a2[1]a2[3]a2[4] 
    a2[1]a2[3]a2[5] 
    a2[1]a2[6]a2[4] 
    a2[1]a2[6]a2[5] 
    a2[2]a2[3]a2[4] 
    a2[2]a2[3]a2[5] 
    a2[2]a2[6]a2[4] 
    a2[2]a2[6]a2[5] 
+0

感謝Markus。它工作 –

+1

很高興知道:)然後請upvote我的答案並將其標記爲正確的答案。謝謝! – Markus

相關問題