dfs、遍历与for
2024-10-14 14:36:18
dfs实际上就是若干个递归式连续使用,从而把所有情况全部遍历的方法
首先是递归式的连用,然后注意参数的选取以及变化就行了
1、参数一般有状态参数与开关参数
最简单的dfs就是每次选择只是改变自身状态(改变状态只需要将状态参数(如金币)改变掉就行了) 此时将若干种情况简单罗列,于递归式中改变状态参数的值即可
稍复杂的就是每次的状态会影响下一次的选择范围(如不能连续两次选择2这个数字),这时形参中就需要使用一个开关参数,把取2与不取2的情况分隔开
2、使dfs升华的是与for的连用,
普通dfs的步长一般是固定的,这也就导致某些选择的间距不同的问题不能被解决,
而在dfs中加入for之后能让dfs灵活地控制状态参数的步长(如冰球问题,遇到障碍之后才能改变方向,而不是每一步都能改变)
POJ冰球问题http://poj.org/bbs?top=342174&problem_id=3009
最新文章
- 简述jpg。Gif。png-8.png-24的区别,分别使用场景
- 郝斌C语言代码
- osg渲染数据高程文件
- Leetcode: Word Pattern II
- Uva - 11383 - Golden Tiger Claw
- 拥抱大家庭,nodejs走thrift
- Yii Framework2.0开发教程(4)在yii中定义全局变量
- Goldeneye.py网站压力测试工具2.1版源码
- 如何选择适合自己的CMS建站系统
- php、apache、nginx、线程、进程
- springBoot整合jpa
- html input file accept 上传文件类型限制格式 MIME 类型列表
- mariadb开启远程访问
- 深度图从ros数据类型转换成opencv数据类型
- 能用padding,margin解决的不要使用伪元素,能用背景解决的也不要用伪元素
- Antenna Placement POJ - 3020 (最小边集覆盖)
- (转载)CUDA、tensorflow与cuDNN的版本匹配问题
- The Annoying Bug
- tomcat+nginx+redis集群搭建并解决session共享问题。
- 2016-2017 ACM-ICPC, NEERC, Northern Subregional Contest Problem F. Format
热门文章
- js事件轮询机制
- ubuntu , 笔记本合上盖子时不关机的方法。
- [Java学习] Java类的基本运行顺序
- 缓存地图 ArcGIS ——Local compact and exploded tile cache layer for WPF API
- ArcGIS API for Silverlight/WPF 2.1学习笔记(一)——精简版
- codeforces 930b//Game with String// Codeforces Round #468 (Div. 1)
- Java网络编程和NIO详解开篇:Java网络编程基础
- UVA-10061 How many zero's and how many digits ? (数论)
- Oracle12c中多宿主环境(CDB&;amp;PDB)的数据库触发器(Database Trigger)
- C语言描述队列的实现及操作(数组实现)