第三章(一)DFS BFS 树与图的存储 树与图的深搜、宽搜 拓扑排序

1树的深搜和宽搜

先来看一下两种搜索搜索顺序

深搜顺序

宽搜顺序

然后我们来简单地对比一下二者

- 数据结构 空间 最短性(边长权重都为1)
DFS stack O(h)
BFS queue O(2^h)

然后来看DFS

DFS

DFS里有两个重要的概念 非别是回溯和减枝

排列数字

给定一个整数n,将数字1~n排成一排,将会有很多种排列方法。

现在,请你按照字典序将所有的排列方法输出。

输入格式

共一行,包含一个整数n。

输出格式

按字典序输出所有排列方案,每个方案占一行。

数据范围
1≤n≤7
输入样例:

3

输出样例:

1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

我们先来分析一题意
DFS中最终要的就是顺序,我们到底要用什么样的顺序来把我们某一答案的全部方案遍历一遍

在这里我们可以看成有三个空位,然后往每个空位上填入数字

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1)这本书为什么值得看: Python语言描述,如果学的Python用这本书学数据结构更合适 2016年出版,内容...
    孙怀阔阅读 14,331评论 0 15
  • 原创 先看个小题热热身。 整数分解 整数分解为若干项之和将一个正整数N分解成几个正整数相加,可以有多种分解方法,例...
    Cipolee阅读 4,492评论 0 2
  • 深度优先搜索(DFS) 深度优先搜索,重点就在于“深度”一词,不碰到死胡同就不回头。深度优先搜索是一种枚举所有完整...
    荷包蛋要三分熟阅读 4,551评论 0 0
  • noip 2008题解 笨小猴 原题 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法...
    bbqub阅读 3,240评论 0 0
  • 我喜欢在写东西之前,加上一个时间,比如像今天一样,我总要敲下2018年12月16日星期日 这几个字之后,才有心情开...
    海上拾趣阅读 1,280评论 0 1