OSDN Git Service

style: format markdown files with remark-lint
author24OI-bot <15963390+24OI-bot@users.noreply.github.com>
Sun, 4 Nov 2018 03:36:22 +0000 (11:36 +0800)
committer24OI-bot <15963390+24OI-bot@users.noreply.github.com>
Sun, 4 Nov 2018 03:36:22 +0000 (11:36 +0800)
docs/search/dfs.md

index da96b23..6b436ad 100644 (file)
@@ -7,30 +7,34 @@ DFS 全称是 [Depth First Search](https://en.wikipedia.org/wiki/Depth-first_sea
 
 上面的解释太过高深,我们可以感性地理解一下它,在较为初级的应用(非图论)中,搜索就是一个暴力枚举,
 如这个例子:
-> 把正整数n分解为3个不同的数,如6=1+2+3 排在后面的数必须大于等于前面的数
-对于这个问题,如果不知道搜索,应该怎么办呢?
-当然是3重循环 伪代码如下
-```text
-for i=1..n
-  for j=i..n
-    for k=1..n
-      if (i+j+k=n) printf("%d=%d+%d+%d",n,i,j,k);
-```
-那如果是分解成四个整数呢?
-再加一重循环?
 
-那分解成小于等于m个整数呢?
-if 一大堆,写m个?
+> 把正整数 n 分解为 3 个不同的数,如 6=1+2+3 排在后面的数必须大于等于前面的数
+> 对于这个问题,如果不知道搜索,应该怎么办呢?
+> 当然是 3 重循环 伪代码如下
+>
+> ```text
+> for i=1..n
+>   for j=i..n
+>     for k=1..n
+>       if (i+j+k=n) printf("%d=%d+%d+%d",n,i,j,k);
+> ```
+>
+> 那如果是分解成四个整数呢?
+> 再加一重循环?
+
+那分解成小于等于 m 个整数呢?
+if 一大堆,写 m 个?
 
 这时候就需要用到搜索了。
 
 上面的例子也可以抽象成图,就是把能分解的数都算作一个点,然后按顺序把他们连起来。
 
-##模板
+\## 模板
 
 不管是图还是其它,都是这样
 
 伪代码:
+
 ```text
 dfs(n) {
   if (碰到边界) //如上面例子中的分解完就是基本情况
@@ -46,7 +50,7 @@ dfs(n) {
 
 有些情况不需要标记,请自行判断。
 
-##实现(对于图来说)
+\## 实现(对于图来说)
 
 伪代码: