当前位置: 首页 > >

遍历一个矩阵节点的上下左右节点应该怎么写

发布时间:

在C++语言实现中,如下:


??????????????? vector direction(-1,0,1,0,-1);


??????????????? void dfs(const vector>& matrix,vector>& can_reach,int r,int c)
??????????????? {
??????????????????????? //如果为true
??????????????????????? if(can_reach[r][c])
??????????????????????? {
??????????????????????????????? return;
??????????????????????? }


??????????????????????? can_reach[r][c]=true;
??????????????????????? int x,y;


//遍历上下左右节点
??????????????????????? for(int i=0;i<4;++i)
??????????????????????? {
??????????????????????????????? x=r+direction[i],y=c+direction[i+1];
??????????????????????????????? if(x>=0 && y??????????????????????????????? {
??????????????????????????????????????? dfs(matrix,can_reach,x,y);
??????????????????????????????? }
??????????????????????? }


??????????????? }


?


这一写法在搜索算法中比较常见。


?



友情链接: