對於一個家庭作業二維數組,我們被分配到使生成樹對於每個圖形,按區域分開他們,後來在升序顯示他們的生成樹。打印出基於等級
我有一個函數,它執行廣度優先搜索來定義圖形中的連通組件,然後將區域饋送給爲每個區域執行生成樹的函數。我想根據「道路」數量或其具有的非零元素來顯示我的最終生成樹二維數組。所有2d陣列都是鄰接矩陣。
我宣佈我的類聲明的二維數組的數組作爲
int** spantreelist[10];
我的樹是2D鄰接矩陣,宣佈
int** trees;
後來動態分配。
我給你這樣我spantrees:
spantreelist[newcount] = tree; //newcount = number of non 0 elements, different for each tree
for (int i = 0; i < 10; i++)
for (int y = 0; y < cities; y++)
for (int r = 0; r < cities; r++)
{
spantreelist[i][y][r] = tree[y][r];
}
然而,當我打電話給我的最後spantreelist稍後打印我的二維數組,我得到一個分段錯誤。
for (i = 0; i < 10; i++)
for (j = 0; j < cities; j++)
for (k = 0; k < cities; k++)
cout << spantreelist[i][j][k] <--- seg fault here.
怪異的一部分,如果我只是寫 COUT < < SPANTREE [2] [3] [4] // 2
我得到我想要的價值。
如何正確地把二維數組到一個數組任何提示將是巨大的。
顯示聲明。 –