DFS搜索

作者: zchzx30 | 来源:发表于2020-03-04 09:18 被阅读0次

核心处理如下,已迷宫为例:

1、退出条件,到达目标位置;

if(x==p && y==q) return;

2、搜索路径

int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}}

for(int k=0;k<3;k++) {   
  tx = x + next[k][0]; 
  ty = y + next[k][1]; 
  invalid(tx); invalid(ty) 
}

3、递归搜索

if(a[tx][ty] == 0  &&  book[tx][ty] == 0){

  book[tx][ty] = 1; 标记为已处理

  dfs(tx, ty, step+1);  开始下一轮处理

  book[tx][ty] = 0; 处理结束取消标记
}

相关文章

  • DFS与N皇后问题

    DFS与N皇后问题 DFS 什么是DFS DFS是指深度优先遍历也叫深度优先搜索。 它是一种用来遍历或搜索树和图数...

  • DFS搜索

    核心处理如下,已迷宫为例: 1、退出条件,到达目标位置; 2、搜索路径 3、递归搜索

  • BFS

    [TOC] BFS 和 DFS BFS广度有限搜索和DFS深度优先搜索算法是特别常用的两种算法 DFS 算法就是回...

  • 矩阵搜索、图相关算法整理

    dfs ,求连通块等 dfs ,指定路径搜索 BFS求迷宫距离

  • BFS和DFS

    BFS:广度优先搜索 DFS:深度优先搜索 树的遍历 BFS:A B C D E F G H I DFS: A ...

  • DFS与BFS LeetCode 刷题小结(一)

    本节我们将汇总一些 LeetCode bfs与dfs相关的题。 关于深度优先搜索(DFS)和广度优先搜索(BFS)...

  • 普通搜索之DFS

    深度优先搜索(DFS)和广度优先搜索(BFS)是搜索问题中比较常见的方法。此篇介绍DFS算法思想。现有n个点,m条...

  • 算法-Tree深度优先搜索

    DFS(Depth-First Search) DFS 是一种递归形式的搜索方式。相对于“层”的概念,DFS更偏向...

  • 刷题7 剑指 Offer — DFS

    树的遍历方式总体分为两类:深度优先搜索(DFS)、广度优先搜索(BFS);常见的 DFS : 先序遍历、中序遍历、...

  • dfs搜索路径

    1 规定一个搜索顺序(右下左上)2 标记起点(book[1][1] = 1)3 dfs:

网友评论

      本文标题:DFS搜索

      本文链接:https://www.haomeiwen.com/subject/xduplhtx.html