2016-04-06 26 views
-5

考慮一組數字的網格狀的函數:爪哇如何返回,返回的2D陣列直角圖案

1  1 2  1 2 3 
     2 2  2 2 3 
       3 3 3 

換言之,其中在每個位置上的數如下直角方形網格模式。我如何編寫一個函數來創建,填充和返回這樣的二維數組? (另外,我想知道Math.max(a,b)對填充網格是否有用,我想知道它是否可以返回兩個輸入a和b之間的哪個值更大)。

我已經有一個功能設置,但我不知道從哪裏開始:

int[][] cornerPattern(int squareSize) { 

} 

提示就可以了

+1

老實說,你不看到這裏的模式? –

回答

1

大多數Java程序可以很容易地找到一個模式來解決或至少開始。
那麼最新的模式呢?
該模式是數組索引和該地點的元素之間的關係。
其中有0個的所有索引都有1個,所以arr [0] [0]是1.查看那裏的模式?
其中[1]中的每個索引有2個。因此,arr [0] [1],arr [1] [0]和arr [1] [1]是2,與3相同。
大小也是以相同的方式定義的。 3,將[3] [3]矩陣。
希望有所幫助。 :)

您正在尋找這樣的事情

int m =//input; 
    int[][] arr = new int[m][m]; 
for(int i=0;i<m;i++){ 
    for(int j=0;j<m;j++){ 
     if(i>=j) 
     arr[i][j]=i; 
     else 
      arr[i][j]=j; 
     System.out.print(arr[i][j]); 
    } 
    System.out.println(); 
} 
+0

如果有不明之處,你可以在這裏留言。如果是,請將此答案標記爲正確:) –