0
我爲直接圖形編寫DFS方法並檢查是否存在循環。我的大部分代碼都來自我的課堂筆記和教科書。問題是它說週期存在時沒有周期。我做了一些更改,但代碼甚至沒有運行。我會很感激你的幫助。 這裏是我的檢查週期C++圖形DFS循環檢查
char check;
char vertex;
int exit=0;
cout<<"Checking to see if there is a DFS cycle";
j=0;
for(i=0;i<columns;i++)
{
vertex=matrix[i][j];
j++;
if(matrix[i][j]!='0')
{
check=matrix[i][j];
j=0;
i=0;
int count=1;
while(exit<rows)
{
if(check==matrix[i][j])
j++;
else
i++;
if(vertex==matrix[i][j]&&count>1)
{
cout<<"This graph has a DFS cycle!";
break;
}
if(vertex!=matrix[i][j]&&check!=matrix[i][j])
{
check=matrix[i][j];
j=0;
i=0;
cout << "This graph has no DFS cycle!";
break;
}
exit++;
}
j=0;
}
else
j=0;
}
system("PAUSE");
return 0;
}
一個循環是獨立於所用算法的東西,所以沒有術語** DFS **循環。 –
請參閱一本好書。 – asheeshr
我的建議:找到一個最簡單的例子,它不工作,在調試器中遍歷代碼,看看究竟發生了什麼。 – NPE