dfs and bfs template

2023-10-28

在做题的时候发现别人的模板后,再加上自己的理解,形成的更适合自己的模板。(相当于随笔,就是记录一下,不做排版)

记忆方法:

BFS: queue --> 马的遍历    *NOTICE: bfs 最短路

DFS: stack/递归 --> 红细胞数

BFS template

feet[] -- 步数   ph[] -- 图/路径   st[] -- bool 

typedef pair<int, int> PII;
const int N = 1021;
int feet[N][N], ph[N][N];
bool st[N][N];
queue<PII> qii;
PII pt[4] = {};
while(!qii.empty()) {
    int x , y = front(). first / second;
    qii.pop();
    for(条件遍历) {
        if(不满足条件) continue;
        执行
        qii.push(make_pair(x1,y1));
    }
}

DFS template

void Search(int k)
 {
 for (i=1;i<=算符种数;i++)
  if (满足条件)
     {
    保存结果
    if (到目的地) 输出解;
              else Search(k+1);
    恢复:保存结果之前的状态{回溯一步}
     }
 }

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dfs and bfs template 的相关文章

随机推荐

  • QT 通过鼠标拖动实现框选

    功能 QT 实现框选 QT 通过鼠标拖动实现框选 实现移动鼠标时 能够进行框选 需要三个鼠标事件 一个画图事件 用来画长方形 protected void mousePressEvent QMouseEvent event void mou
  • 自定义WPF面板

    WPF拥有很多布局面板 比如Grid StackPanel等 这让我们的界面布局更加的灵活 但也许这些面板并不能完全满足你的需求 这时你需要自定义面板来满足你的布局要求 1 面板布局是如何实现的 WPF布局引擎采用了一种递归的方式来实现控件
  • springboot项目打包时提示“程序包xxx不存在,找不到符号”

    springboot多包工程 在使用maven进行打包的时候 一直提示 程序包xxx不存在 找不到符号 但项目是可以正常启动运行的 开始一直以为是maven哪里没有配置好导致的 后来才发现原来是springboot的maven插件导致的 s
  • python: create animated GIF

    在Pillow包中提供了9种不同的图片模式 分别是1 L P RGBYCbCr I F 模式 说明 l 二值图像 只有黑 白两种颜色 L 灰度图像 P 8位色彩图像 RGB 红 绿 蓝色彩空间 每一种颜色值在0 255内 RGBA 对图像增
  • Linux 中的 col 命令及示例

    Linux 系统中的col命令用于过滤掉反向换行 使输出看起来更加正确 只有正向和半正向换行 并尽可能用制表符替换空白字符 这在处理 nroff 和 tbl 的输出时被证明是有用的 col 实用程序只是从标准输入读取并写入标准输出 句法 列
  • HBASE Phoenix异步创建索引报错

    hbase phoenix异步创建索引报错 使用 hbase phoenix异步创建索引报错 错误信息如下 Error ERROR 102 08001 Malformed connection url ERROR 102 08001 ERR
  • android view初始化 开线程,Android框架保证View更新必须在主线程的解读

    今天一位朋友问了我一个问题 android更新ui的时候 如果不在主线程更新ui 系统就会报出错误 应用崩溃 CalledFromWrongThreadException Only the original thread that crea
  • jupyter notebook文件默认存储位置更改

    引用自https blog csdn net Asabc12345 article details 105856044 https blog csdn net qq 24982339 article details 111321852 目录
  • 【星海出品】ansible入门(一)

    1 安装ansible 1 1安装 sudo apt get install y ansible 1 2 配置时需要生成秘钥 ssh keygen 推荐秘钥 1 3 推送秘钥 ssh copy id 10 0 0 7 ssh copy id
  • UML时序图总结

    UML时序图总结 时序图简介 首先 时序图用来表示用例中的行为顺序 当执行一个用例行为时 顺序图中的每条消息对应了一个类操作或者状态机中引起转换的事件 其次 时序图展示对象之间的交互 这些交互是指在场景或用例的事件流中发生的 时序图属于动态
  • SVN切换账户

    前言 一般我们都是将SVN的账户和密码保存起来 每次下载东西时都是默认登录去下载 这样十分方便 但是有时候需要切换账户去下载一些东西 这时候就涉及到切换账户 大多数时候我们都有自己的专用电脑 很少切换账户 对切换账户不是很熟悉 在这里记录一
  • 【计算机视觉

    文章目录 一 分割 语义相关 13篇 1 1 Semantic and Articulated Pedestrian Sensing Onboard a Moving Vehicle 1 2 360 circ from a Single
  • 学python要有多少英语词汇量_英语词汇量到底多大才够?

    1986年 英国 卫报 估算英国人2岁的单词量约为300个 5岁时为5000个 到了12岁 词汇量在12000个左右 卫报 的研究认为大多数人之后的词汇量都不会有太大的变化 它还指出 12000词汇量基本等同于流行报纸每天文章里的词汇量 但
  • 七天搞定Node.js微信公众号

    课程介绍 微信公众号已经1000多万个了 即使不为市场 为自己也应该学会开发它 环境参数 技术语言 Node js 框架 Node js gt 0 12 Koa1 2 0 课程所需开发系统 不限 编译环境 不限 数据库 Mongodb gt
  • 关于静态和动态代码块

    静态代码块 static 实例代码块 静态代码块相当于静态方法 实例代码块相当于实例方法 实例方法在静态方法后面执行 一个对象时 静态代码块和实例代码块只执行一次 当有多个对象时 静态代码块只执行一次 因为静态代码块是属于类的 在将clas
  • 类加载的过程

    1 加载 注意 加载 是 类加载 Class Loading 过程的第一步 1 1 加载的过程 在加载过程中 JVM主要做3件事情 通过一个类的全限定名来获取定义此类的二进制字节流 class文件 在程序运行过程中 当要访问一个类时 若发现
  • 构建跨平台应用的利器——UniApp入门指南

    文章目录 什么是UniApp 介绍UniApp的概念与特点 UniApp相对于其他跨平台框架的优势 UniApp入门指南 安装与环境配置 创建UniApp项目 UniApp项目结构解析 UniApp开发基础 Vue js基础知识回顾 Uni
  • Beautiful Mirrors【Codeforces 1265 E】【期望DP】

    Codeforces Round 604 Div 2 E 题记 不是杭电今年份的原题嘛 为什么比赛的时候没想到这个方面呢 当然题也读错了 尬 杭电多校原题 然后再继续说一下这道题的特殊之处吧 随便说说 典型问题 没有特殊之处 大概画了个图
  • matlab——级数

    级数 级数求和 泰勒级数 级数求和 1 级数求和 求无穷级数的和需要符号表达式求和函数symsum 其调 用格式为 symsum s v n m 其中 s表示一个级数的通项 是一个符号表达式 v是求 和变量 v省略时使用系统的默认变量 n和
  • dfs and bfs template

    在做题的时候发现别人的模板后 再加上自己的理解 形成的更适合自己的模板 相当于随笔 就是记录一下 不做排版 记忆方法 树 BFS queue gt 马的遍历 NOTICE bfs 最短路 DFS stack 递归 gt 红细胞数 BFS t