0

我有一個一半的一個N×N矩陣在一個javascript數組中,我需要得到這一半,並「鏡像」它的另一邊主要對角線。JavaScript中的N×N鄰接矩陣的鏡像的一半

這裏是說明圖像更好:

Matrix

主對角線是紅線,和我有需要被「放在」紅線下面太矩陣的上半部,形成一個完整的矩陣。

的數據結構是這樣的:

var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ]; 

線,裏面列。

我經常插入我已經試過的東西在我的問題,但在這個時候,我甚至不知道如何開始。所以,如果我不提供更多信息,我很抱歉。

回答

1

一種方式做到這一點是這樣的

var i = 0; 
var j = 0; 
var map = [ ["0","1","2","3"], ["0", "1", "2"], ["0","1"], ["0"] ]; 
var n = map.length; 
var res = new Array(n); 

for (i = 0; i < n; i++) { 
    res[i] = new Array(n); 
    for (j = 0; j < n - i; j++) { 
    res[i][i+j] = map[i][j]; 
    } 
} 

for (i = 0; i < n; i++) { 
    for (j = i + 1; j < n; j++) { 
    res[j][i] = res[i][j]; 
    } 
} 

res將包含鏡像陣列

+0

非常感謝。嘿嘿,救了我的命。 –