bfs

2024/4/21 5:39:23

HDU-2102 A计划(BFS)

可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不…

SDUT-3468 广度优先搜索练习之神奇的电梯(BFS)

广度优先搜索练习之神奇的电梯 Time Limit: 1000MS Memory Limit: 65536KBSubmit StatisticProblem Description 有一座已知层数为n的高楼,这座高楼的特殊之处在于只能靠电梯去上下楼,所以要去到某一层要非常耽误时间,然而更悲哀的是&#xf…

PTA 1091 Acute Stroke

题目描述 分析&#xff1a; 三维的搜索题&#xff0c;dfs会因为深度太深导致出现段错误&#xff0c;使用bfs进行搜索 #include<cstdio> #include<queue> using namespace std;struct node{int x,y,z; }; int M,N,L,T; int map[1290][135][65]; bool visit[1290][…

L2-2 金字塔游戏

题目来源&#xff1a;天梯赛训练题 幼儿园里真热闹&#xff0c;老师带着孩子们做一个名叫金字塔的游戏&#xff0c;游戏规则如下&#xff1a; 首先&#xff0c;老师把孩子们按身高从高到矮排列&#xff0c;选出最高的做队长&#xff0c;当金字塔的塔顶&#xff0c;之后在其余…

Robot area 机器人运动范围

文章目录Robot area 机器人运动范围思路TagRobot area 机器人运动范围 有一个 m*n的矩阵&#xff0c;从【0,0】到【m-1,n-1】。机器人从【0,0】开始移动&#xff0c;每一次可以上下左右移动一格。不能出界&#xff0c;也不能进入行坐标与列坐标数字之和大于k的格子。计算机器人…

01矩阵 01 Matrix

文章目录01矩阵 01 Matrix思路Tag01矩阵 01 Matrix 在一个由 0和1 组成的矩阵mat,输出一个大小相同的矩阵&#xff0c;其中每个格子是mat中对应位置元素到最近的0的距离。 两个相邻元素间的距离是1. mat [[0,0,0],[0,1,0],[0,0,0]] out&#xff1a;[[0,0,0],[0,1,0],[0,0,…

1076 Forwards on Weibo

题目来源&#xff1a;PAT (Advanced Level) Practice Weibo is known as the Chinese version of Twitter. One user on Weibo may have many followers, and may follow many other users as well. Hence a social network is formed with followers relations. When a user …

1106 Lowest Price in Supply Chain

题目来源&#xff1a;PAT (Advanced Level) Practice A supply chain is a network of retailers&#xff08;零售商&#xff09;, distributors&#xff08;经销商&#xff09;, and suppliers&#xff08;供应商&#xff09;-- everyone involved in moving a product from …

LeetCode 1161. 最大层内元素和

原题目&#xff1a;https://leetcode-cn.com/problems/maximum-level-sum-of-a-binary-tree/ 思路&#xff1a; 使用BFS&#xff0c;记录每一层的值之和&#xff0c;返回最大的层即可 代码&#xff1a; class Solution { public:int maxLevelSum(TreeNode* root) {int maxlen…

LeetCode 773. 滑动谜题

原题目&#xff1a;https://leetcode-cn.com/problems/sliding-puzzle/ 思路&#xff1a; 典型的BFS。 将二维的数组降维成字符串方便处理&#xff0c;记录0在每一个位置的可以变换的位置&#xff08;数组neighbor&#xff09;。 为了节省时间&#xff0c;我们可以用set记录…

LeetCode 111. Minimum Depth of Binary Tree

原题目&#xff1a;111. Minimum Depth of Binary Tree 代码&#xff1a; BFS逐层遍历&#xff0c;如果队列头结点的左右孩子都是null&#xff0c;返回深度。 代码&#xff1a; class Solution { public:int minDepth(TreeNode* root) {if(rootNULL) return 0;queue<TreeN…

2021-08-31 AcWing暑期最后一题 3825. 逃离大森林

你是一个宝可梦饲养员&#xff0c;你正在进行你的冒险之旅。 当前&#xff0c;你的目标是逃离飞鸟森林。 飞鸟森林可以表示为一个 rc 的方格矩阵。 每个方格&#xff0c;要么是树木&#xff0c;要么是空地。 空地中可能包含 0 个或多个宝可梦饲养员&#xff08;森林中可能存…

[AcWing算法提高] 搜索专题练习(进行中......)

文章目录✔Flood Fill[AcWing 1097. 池塘计数](https://www.acwing.com/problem/content/1468/)[AcWing 1098. 城堡问题]([1098. 城堡问题 - AcWing题库](https://www.acwing.com/problem/content/1100/))[AcWing 1106. 山峰和山谷](https://www.acwing.com/problem/content/14…

6-9图-最短路径问题BFS

最短路径问题——BFS 一.代码实现 void BFS_MIN_Distance(Graph G, int u) {//d[i]表示u到i的路径for (i 0; i < G.vexnum; i) {d[i] ∞;path[i] -1;//最短路径从哪个顶点过来}d[u] 0;visited[u] TRUE;EnQueue(Q, u);while (!isEmpty(Q)) {DeQueue(Q, u);for(w Firs…

九度 题目1456:胜利大逃亡

题目描述&#xff1a;Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会.魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C的矩阵,刚开始Ignatius被关在(0,0,0)的位置,离开城堡的门在(A-1,B-1,C-1)的位置,现在知道魔王将在T分钟后回到城堡,I…

acwing 848 有向图的拓扑序列 (求图是否有环)

题面 题解 我们观察可以发现&#xff0c;对于一个有环图&#xff0c;这个环上的所有点入度都是不为0的&#xff0c;根据这个性质&#xff0c;我们就可以让所有入度为0的点入队&#xff0c;然后再删除i->j的边&#xff08;其实就是让d[j]–&#xff09;&#xff0c;当d[j]为0…

剑指offer13.机器人的运动范围C++

地上有一个m行n列的方格&#xff0c;从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动&#xff0c;它每次可以向左、右、上、下移动一格&#xff08;不能移动到方格外&#xff09;&#xff0c;也不能进入行坐标和列坐标的数位之和大于k的格子。例如&am…

GDSOI 2016 T2 星际穿越

Description 有n个人在排队。他们会按顺序选择自己喜欢的点a[x]。如果a[x]已经被选择了&#xff0c;那么他会选择f[a[x]]&#xff0c;如果f[a[x]]已经被选择了&#xff0c;则选择f[f[a[x]]]…保证所有人都有点选择。求选择的点本质不同的排列的方案数。 n<10^6 Solution …

计蒜客-1405-最大岛屿(bfs)

神秘的海洋&#xff0c;惊险的探险之路&#xff0c;打捞海底宝藏&#xff0c;激烈的海战&#xff0c;海盗劫富等等。加勒比海盗&#xff0c;你知道吧&#xff1f;杰克船长驾驶着自己的的战船黑珍珠 11 号要征服各个海岛的海盜&#xff0c;最后成为海盗王。 这是一个由海洋、岛…

PTA 1090 Highest Price in Supply Chain

题目描述 分析&#xff1a;树的遍历&#xff0c;找出价值最大的结点。 DFS #include<cstdio> #include<vector> using namespace std; const int maxn100005; vector<int> G[maxn]; double s[maxn],maxprice0; double R,P; int maxnum0; void DFS(int v){i…

acwing 844 走迷宫 (bfs)

题面 题解 一般对于求所能到达的最短路径&#xff0c;都是用BFS来做&#xff0c;因为BFS是逐层遍历&#xff0c;当找到结果时&#xff0c;一定是距离最小的&#xff0c;BFS模板一般是用队列来做&#xff0c;然后将开始的点放入队列&#xff0c;然后开始找离起点距离最近的点&am…

6-7图-广度优先搜索BFS

广度优先搜索 推荐看本文之前先学习6-6-DFS知识 一.基础知识 breadth [bredθ] 宽度 n. 广度优先搜搜Breadth-First-Search&#xff08;BFS&#xff09; 往广里走 访问次序&#xff1a;12345678 访问过程&#xff1a;假设从1结点开始访问&#xff0c;1先入队&#xff08;队…

华为机试:最长广播效应

【编程题目 | 200分】最长广播效应 [ 200 / 中等 ] 题目描述 某通信网络中有N个网络结点&#xff0c;用1到N进行标识。网络中的结点互联互通&#xff0c;且结点之间的消息传递有时延&#xff0c;相连结点的时延均为一个时间单位。现给定网络结点的连接关系link[i]{u&#xff…

LeetCode 199. Binary Tree Right Side View

原题目&#xff1a;https://leetcode-cn.com/problems/binary-tree-right-side-view/ 思路; BFS遍历&#xff0c;每次存入每一层的最后一个元素 代码&#xff1a; class Solution { public:vector<int> rightSideView(TreeNode* root) {if(rootNULL) return {};vector&…

PAT 1004 Counting Leaves

题目描述 此题是输出每层有多少个叶子节点&#xff0c;可以采用DFS和BFS两种方法进行&#xff08;由于长时间不练习相关题目。这么简单的题也不能很快做出来&#xff0c;菜 &#xff09; 此题是搜索基础题&#xff0c;需要多多练习&#xff0c;多多回顾 DFS #include<io…

题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分)

文章目录题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分)一、题目二、题解题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分) 一、题目 二、题解 要你找最远的那扇门就是bfs到底&#xff0c;然后输出最后一个节点就完事了。要注意的是&#xff0c;开始节点需要你自己去找&#…

1096. 地牢大师(BFS + 三维数组)

1096. 地牢大师 你现在被困在一个三维地牢中&#xff0c;需要找到最快脱离的出路&#xff01; 地牢由若干个单位立方体组成&#xff0c;其中部分不含岩石障碍可以直接通过&#xff0c;部分包含岩石障碍无法通过。 向北&#xff0c;向南&#xff0c;向东&#xff0c;向西&…

1440 残缺的棋盘

在国际象棋里&#xff0c;王是最重要的一个棋子。每一步&#xff0c;王可以往上下左右或者对角线方向移动一步&#xff0c;如下图所示。 给定两个格子A(r1,c1), B(r2,c2)&#xff0c;你的任务是计算出一个王从A到B至少需要走多少步。为了避免题目太简单&#xff0c;我们从棋盘里…

课程表系列

相关题目&#xff1a; 207. 课程表 210. 课程表 II 1462. 课程表 IV class CourseSchedule:"""207.课程表https://leetcode.cn/problems/course-schedule/"""def __init__(self):# 记录⼀次递归堆栈中的节点self.onPath []# 记录遍历过的节点&…

909. 蛇梯棋

2021-06-27 LeetCode每日一题 链接&#xff1a;https://leetcode-cn.com/problems/snakes-and-ladders/ 标签&#xff1a;广度优先搜索、数组、矩阵 题目 N x N 的棋盘 board 上&#xff0c;按从 1 到 N*N 的数字给方格编号&#xff0c;编号 从左下角开始&#xff0c;每一行交…

acwing 1106 山峰和山谷(Flood Fill 模型)

题面 题解 对于一个联通的格子&#xff0c;周围没有比它高的称为山峰&#xff0c;周围没有比它矮的称为山谷&#xff0c;如果周围没有&#xff0c;全图都是联通的&#xff0c;它就是山峰又是山谷。 我们依次遍历没有被标记过的点&#xff0c;用bfs求联通块的同时&#xff0c;判…

LeetCode 797. 所有可能的路径

原题目&#xff1a;https://leetcode-cn.com/problems/all-paths-from-source-to-target/ 思路&#xff1a; 使用BFS 回溯算法 代码&#xff1a; class Solution {vector<vector<int>> ans;vector<int> tmp;void bfs(vector<vector<int>>&…

SDUT-3474 汤圆の拯救计划(常规BFS)

汤圆の拯救计划 Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description 又到了汤圆星球一年一度的汤圆节了&#xff0c;但是大魔王却过来把汤圆公主抓走了Σ( △ |||)︴ 身为汤圆骑士的QAQ蒟蒻自然而然的肩负着拯救汤圆的使命 QAQ蒟蒻经历了…

华为机试:连续出牌数量

【编程题目 |200分】连续出牌数量【2022 Q1,Q2考试题】 题目描述 手里给一副手牌&#xff0c;数字从0-9&#xff0c;有r(红色),&#xff0c;g(绿色&#xff09;&#xff0c;b(蓝色)&#xff0c;y(黄色)四种颜色&#xff0c;出牌规则为每次打出的牌必须跟上一张的数字或者颜色…

【Leetcode】图的多源BFS详解

对于Tree的BFS&#xff08;典型的「单源 BFS」&#xff09;大家都比较熟悉&#xff1a;首先把root节点入队&#xff0c;再一层一层无脑遍历就行了。 对于图的BFS&#xff08;「多源 BFS」&#xff09;也是一样&#xff0c;与Tree的BFS的区别如下&#xff1a; Tree只有1个root&…

【LeetCode每日一题合集】2023.8.28-2023.9.3(到家的最少跳跃次数)

文章目录 57. 插入区间823. 带因子的二叉树解法——递推 1654. 到家的最少跳跃次数(BFS&#xff0c;&#x1f6b9;最远距离上界的证明)1761. 一个图中连通三元组的最小度数2240. 买钢笔和铅笔的方案数解法1——完全背包解法2——枚举买了几支钢笔&#xff08;推荐解法&#xff…

星球联盟

题目描述 在遥远的S星系中一共有N个星球&#xff0c;编号为1…N。其中的一些星球决定组成联盟&#xff0c;以方便相互间的交流。 但是&#xff0c;组成联盟的首要条件就是交通条件。初始时&#xff0c;在这N个星球间有M条太空隧道。每条太空隧道连接两个星球&#xff0c;使得…

基于图搜索的自动驾驶规划算法 - BFS,Dijstra,A*

本文将讲解BFS&#xff0c;Dijstra&#xff0c;A*&#xff0c;动态规划的算法原理&#xff0c;不正之处望读者指正&#xff0c;希望有兴趣的读者能在评论区提出一些这些算法的面试考点&#xff0c;共同学习&#xff0c;一起进步 0 图论基础 图有三种&#xff1a;无向图、有向…

1076 Forwards on Weibo (30 分)

跟着柳婼学姐学习的笔记ヾ&#xff08;≧▽≦*&#xff09;o题意分析注意点知识点词汇CODE原题目&#xff1a; 1076 Forwards on Weibo (30 分).题意 一个微博用户有很多粉丝&#xff0c;也可能关注其他用户&#xff0c;由此建立了社交网络。当一个用户发了一条微博&#xff0…

使用 javascript 在 n*m 网格中演示 BFS 广度优先搜索算法在带权重图中求最短路径

普通的广度优先最短路径搜索算法只能解决无权重的图&#xff1a; 求出的最短路径没问题&#xff0c;但是如果上边的空缺格子的距离为100呢&#xff1f;这种方式搜出的最短路径可能就是错的&#xff1a; 我们可以找一个距离1作为基本距离&#xff0c;然后距离为100的格子在搜索时…

搜索与图论 ---- 树与图的广度优先遍历

树与图的广度优先遍历 图中点的层次 给定一个n个点m条边的有向图&#xff0c;图中可能存在重边和自环。 所有边的长度都是1&#xff0c;点的编号为1~n。 请你求出1号点到n号点的最短距离&#xff0c;如果从1号点无法走到n号点&#xff0c;输出-1。 输入格式 第一行包含两…

SHUOJ 1553 滑雪问题(大数据)(BFS)

题目&#xff1a;SHUOJ 1553 题目&#xff1a; Problem R: 滑雪&#xff08;大数据&#xff09; Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 285 Solved: 233[Submit][Status][Web Board]Description Michael喜欢滑雪百这并不奇怪&#xff0c; 因为滑雪的确很刺激。可是…

蓝桥杯 --- 双指针、BFS与图论

蓝桥杯 --- 双指针、BFS与图论双指针1238. 日志统计&#xff08;双指针&#xff09;BFS1101. 献给阿尔吉侬的花束&#xff08;BFS&#xff09;1113. 红与黑&#xff08;BFS&#xff09;图论1224. 交换瓶子&#xff08;图论&#xff09;双指针 1238. 日志统计&#xff08;双指针…

C++算法:二叉树的序列化与反序列化

#题目 序列化是将一个数据结构或者对象转换为连续的比特位的操作&#xff0c;进而可以将转换后的数据存储在一个文件或者内存中&#xff0c;同时也可以通过网络传输到另一个计算机环境&#xff0c;采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化。…

历届试题 买不到的数目 (蓝桥杯)

问题描述小明开了一家糖果店。他别出心裁&#xff1a;把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。小朋友来买糖的时候&#xff0c;他就用这两种包装来组合。当然有些糖果数目是无法组合出来的&#xff0c;比如要买 10 颗糖。你可以用计算机测试一下&#xff0c;在这…

2024/1/15 DFS BFS

目录 全排列 catch that cow 红与黑 全排列 给定一个整数 n&#xff0c;将数字 1∼n 排成一排&#xff0c;将会有很多种排列方法。 现在&#xff0c;请你按照字典序将所有的排列方法输出。 输入&#xff1a; 3 输出&#xff1a; 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 …

SDUT-2779 找朋友(常规BFS)

找朋友 Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description X&#xff0c;作为户外运动的忠实爱好者&#xff0c;总是不想呆在家里。现在&#xff0c;他想把死宅Y从家里拉出来。问从X的家到Y的家的最短时间是多少。为了简化问题&#xff0c…

SDUT-2780 Pots(BFS)

Pots Time Limit: 1000MS Memory Limit: 65536KBSubmit StatisticProblem Description You are given two pots, having the volume of A and B liters respectively. The following operations can be performed:FILL(i) fill the pot i (1 ≤ i ≤ 2) from the tap;DR…

407. Trapping Rain Water II

/** 自己写的&#xff0c;通过32/40个case&#xff0c;TLE错误&#xff01; */ struct pos {int x;int y;int height; };class posGreaterCmp {public:bool operator ()(const pos &p1,const pos &p2) const {return p1.height>p2.height;} };class posSort {publi…

POJ-3984迷宫问题 (BFS,水题)

迷宫问题Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 24199 Accepted: 14125Description定义一个二维数组&#xff1a; int maze[5][5] {0, 1, 0, 0, 0,0, 1, 0, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 1, 0,};它表示一个迷宫&#xff0c;其中的1表示墙壁…

剑指 offer 44 分行从上往下打印二叉树

题面 题解 对于二叉树的层序遍历&#xff0c;我们直接用BFS优先队列即可&#xff0c;像上一题一样&#xff0c;但是这题让我们分层输出&#xff0c;这里有一个小技巧,我们可以在每层后边加一个nullptr 8 nullptr 12 2 nullptr 6 nullptr 4 nullptr &#xff0c;这样每次遍历到n…

题目1457:非常可乐

题目描述&#xff1a;大家一定觉的运动以后喝可乐是一件很惬意的事情&#xff0c;但是seeyou却不这么认为。因为每次当seeyou买了可乐以后&#xff0c;阿牛就要求和seeyou一起分享这一瓶可乐&#xff0c;而且一定要喝的和seeyou一样多。但seeyou的手中只有两个杯子&#xff0c;…

acwing 187 导弹防御系统 (最长上升子序列)

题面 题解 拦截导弹的升级版&#xff0c;拦截导弹只让使用不上升子序列&#xff0c;我们就只需要考虑两种情况 这道题我们可以使用上升和下降两种序列&#xff0c;那么对于一个数&#xff0c;我们就有4中情况&#xff0c;那么我们就只能dfs暴搜&#xff0c;看这个数放在哪种情…

SDUT-2141 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历

数据结构实验之图论一&#xff1a;基于邻接矩阵的广度优先搜索遍历Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description给定一个无向连通图&#xff0c;顶点编号从0到n-1&#xff0c;用广度优先搜索(BFS)遍历&#xff0c;输出从某个顶点出发…

SDUT-3526 团战可以输,提莫必须死(BFS)

团战可以输、提莫必须死 Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description 为了一些你们不知道的原因,我们把LOL的地图抽象为一个nm的矩阵 提莫积攒了k个蘑菇准备种到地图上去&#xff0c;因为提莫的背篓漏了&#xff0c;所以每一…

PTA-列出连通集(DFS+BFS)

列出连通集 (25分) 给定一个有NN个顶点和EE条边的无向图&#xff0c;请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N-1N−1编号。进行搜索时&#xff0c;假设我们总是从编号最小的顶点出发&#xff0c;按编号递增的顺序访问邻接点。 输入格式: 输入第1行给出2个整数NN(…

SDUT-2139 数据结构实验之图论五:从起始点到目标点的最短步数(BFS)

数据结构实验之图论五&#xff1a;从起始点到目标点的最短步数&#xff08;BFS&#xff09;Time Limit: 1000MS Memory Limit: 65536KBSubmit StatisticProblem Description在古老的魔兽传说中&#xff0c;有两个军团&#xff0c;一个叫天灾&#xff0c;一个叫近卫。在他们所在…

LeetCode 559. N叉树的最大深度

原题目&#xff1a;https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/ 思路&#xff1a; 采用BFS&#xff0c;首先用size记录属于同一层的节点的个数&#xff0c;然后把这些节点的孩子加入到队列之中。 代码; class Solution { public:int maxDepth(Node* root…

LeetCode 107. Binary Tree Level Order Traversal II

原题目&#xff1a;https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/ 思路&#xff1a; 普通的层序遍历&#xff0c;最后reverse。 代码&#xff1a; class Solution { public:vector<vector<int>> levelOrderBottom(TreeNode* root) {i…

C++图的基本用法

PS.更多数据结构知识详见&#xff1a; 八大数据结构 图的数据结构 const int MAXVEX 100; //最大的顶点数 typedef char VertexType; //定点的类型 typedef int EdgeType; //边的权值struct Graph {VertexType vexs[MAXVEX]; //顶点表EdgeType arc[MAXVEX][MAXVEX]; …

【图解算法】这个课程表大不简单——拓扑排序

引言 >_< 现在需要为学生排好一张课表&#xff08;课程的学习顺序&#xff09; 可事情没有这么简单&#xff1a; 课程前驱课程课程0课程1课程0、课程4课程2课程3课程0课程4课程5课程3课程6课程3不妨画成一张图&#xff08;Graph&#xff09;试试看&#xff1f; 我们意…

acwing 847 图中点的层次(树的宽度优先遍历)

题面 题解 求图中点到点的最短距离&#xff0c;因为所有点的距离都是1&#xff0c;我们就可以用bfs来做&#xff0c;每次逐层搜索&#xff0c;从1到n一定是距离最短的&#xff0c;用宽搜的模板即可 代码 #include<iostream> #include<cstdio> #include<string&…

acwing 1107 魔板 (最小步数模型)

题面 题解 和八数码问题类似&#xff0c;都是将初始状态变化成最终状态所花费的最小步数&#xff0c;我们可以将每个状态看成一个点进行更新即可 代码 #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorith…

图的广度优先遍历与深度优先遍历

介绍图的关键的搜索算法之前&#xff0c;先简单介绍下图论中图的概念&#xff0c;矩阵理论中的邻接矩阵和邻接表。 1 基本概念 1.1 图 1.1.1 定义 定义&#xff1a;图(graph)是由一些点(vertex)和这些点之间的连线(edge)所组成的&#xff1b;其中&#xff0c;点通常被成为&…

SHUOJ 1724 单侧跳马问题(BFS)

题目&#xff1a;SHUOJ 1724 题目链接&#xff1a;http://202.121.199.212/JudgeOnline/problem.php?id1724 题目&#xff1a; 1724: 单侧跳马问题2 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 51 Solved: 32[Submit][Status][Web Board]Description 给定m*n棋盘&…

Codeforces Round 901 (Div. 1) B. Jellyfish and Math(思维题/bfs)

题目 t(t<1e5)组样例&#xff0c;每次给出a,b,c,d,m(0<a,b,c,d,m<2的30次方) 初始时&#xff0c;(x,y)(a,b)&#xff0c;每次操作&#xff0c;你可以执行以下四种操作之一 ①xx&y&#xff0c;&为与 ②xx|y&#xff0c;|为或 ③yx^y&#xff0c;^为异或 …

Java实现图的广度优先遍历和深度优先遍历

本文所有代码全部基于Java实现图的存储和创建一文所实现的带权无向图。 广度优先遍历 广度优先搜索(Breadth-First-Search,BFS) 类似于二叉树的层序遍历。基本思想是&#xff1a;首先访问起始顶点v&#xff0c;接着由v出发&#xff0c;依次访问未访问过的邻接顶点w1,w2,…wi,然…

leetcode_104

1&#xff0c;题目大意&#xff1a; 有一棵二叉树&#xff0c;求它的深度 2&#xff0c;思路&#xff1a; &#xff08;1&#xff09;树与二叉树的区别&#xff1a; 树与二叉树是不同的数据结构&#xff0c;不是一样的&#xff0c;树不能为空&#xff0c;而二叉树可以。 &…

数据结构 图 深度优先遍历(DFS) 广度优先遍历(BFS)

图的邻接表表示法看这里 首先定义必要的辅助数组和函数 bool visited[MAX_VERTEX_NUM];//标志是否访问过template<typename VertexType, typename InfoType> int firstAdjVex(ALGraph<VertexType, InfoType>ALG, int vIndex)//寻找第一个邻接点&#xff0c;未找到…

走迷宫(双向BFS)详细讲解

一个迷宫由R行C列格子组成&#xff0c;有的格子里有障碍物&#xff0c;不能走&#xff1b;有的格子是空地&#xff0c;可以走。 给定一个迷宫&#xff0c;求从左上角走到右下角最少需要走多少步(数据保证一定能走到)。只能在水平方向或垂直方向走&#xff0c;不能斜着走。 输入…

CCF-CSP 201512-3 画图 C++实现

问题描述 试题编号&#xff1a; 201512-3 试题名称&#xff1a; 画图 时间限制&#xff1a; 1.0s 内存限制&#xff1a; 256.0MB 问题描述&#xff1a;   用 ASCII 字符来画图是一件有趣的事情&#xff0c;并形成了一门被称为 ASCII Art 的艺术。例如&#xff0c;下图是用 …

【LeetCode】104. Maximum Depth of Binary Tree 二叉树的深度 DFS BFS 递归方式 迭代方式 JAVA

前言 这次的题目是二叉树的深度遍历&#xff0c;总体上来说吧&#xff0c;难度没有那么大&#xff0c;可是我就是再迭代的地方爬不出来了&#xff0c;有些题解也没有注释&#xff0c;讲解的也不是很清楚&#xff0c;所以就看起来有点麻烦 题目传送门&#xff1a; 点击此处 题…

zzuli 2130 hipercijevi bfs + 链式前向星 + 输入外挂

2130: hipercijevi Time Limit: 1 Sec Memory Limit: 128 MB Submit: 704 Solved: 140 SubmitStatusWeb Board Description 在遥远的星系&#xff0c; 最快的交通方式是用某种管道。 每个管道直接互相连接N个站。 那么我们从第一个站到第N个站最少要经过多少个站呢&#x…

图的广度优先遍历(BFS)和深度优先遍历(DFS)C++实现

问题描述 对下图分别进行广度和深度优先遍历。期望的输出结果为&#xff1a; BFS&#xff1a;s-1-2-3-4-t DFS&#xff1a;s-1-3-t-4-2 基本思路 广度优先&#xff1a;借助标记数组队列&#xff0c;将与当前节点关联的所有未访问过的节点加到队列里&#xff0c;按队列次序输…

HDU - 4784 Dinner Coming Soon (DP+BFS)

Coach Pang loves his boyfriend Uncle Yang very much. Today is Uncle Yang’s birthday, Coach Pang wants to have a romantic candlelit dinner at Uncle Yang’s house and he has to arrive there in T minutes.   There are N houses in their city numbered from 1 …

数字华容道——leetcode773

文章目录数字华容道——leetcode773问题描述分析代码数字华容道——leetcode773 问题描述 在一个 2 x 3 的板上&#xff08;board&#xff09;有 5 块砖瓦&#xff0c;用数字 1~5 来表示, 以及一块空缺用 0 来表示. 一次移动定义为选择 0 与一个相邻的数字&#xff08;上下左…

图论——连通分量

文章目录图论——连通分量连通分量介绍DFS计算连通分量BFS计算连通分量图文件graph.txt建图类图论——连通分量 连通分量介绍 对于上图很显然连通分量为1&#xff0c;对于下图连通分量个数为2 DFS计算连通分量 通过上一小节dfs遍历的过程我们知道依次dfs就是一个连通分量&…

C/C++每日一练(20230326) 二叉树专场(3)

目录 1. 二叉树的前序遍历 &#x1f31f;&#x1f31f; 2. 二叉树的最大深度 &#x1f31f; 3. 有序数组转换为二叉搜索树 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Ja…

二进制矩阵中的最短路径 Shortest Path In Binary Matrix

文章目录二进制矩阵中的最短路径 Shortest Path In Binary Matrix思路Tag二进制矩阵中的最短路径 Shortest Path In Binary Matrix 给定一个N*N矩阵grid&#xff0c;返回一个最短路径&#xff0c;如果没有就返回-1&#xff1b; 最短路径&#xff1a;从grid的左上角[0,0]开始&…

LeetCode 279. Perfect Squares

原题目&#xff1a;https://leetcode-cn.com/problems/perfect-squares/ 思路一&#xff1a; 进行广度优先遍历&#xff0c;先创建完全平方数数组sq&#xff0c;对于一层中的元素依次和数组sq的元素进行比较。 1、如果元素等于sq的元素&#xff1a;说明找到了答案 2、如果元…

LeetCode 1631. 最小体力消耗路径:广度优先搜索BFS

【LetMeFly】1631.最小体力消耗路径&#xff1a;广度优先搜索BFS 力扣题目链接&#xff1a;https://leetcode.cn/problems/path-with-minimum-effort/ 你准备参加一场远足活动。给你一个二维 rows x columns 的地图 heights &#xff0c;其中 heights[row][col] 表示格子 (ro…

牛客 剑指offer 机器人的运动范围

题目 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动&#xff0c;每一次只能向左&#xff0c;右&#xff0c;上&#xff0c;下四个方向移动一格&#xff0c;但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如&#xff0c;当k为18时&#xff0c;机器人能…

打开转盘锁 Open the Lock

文章目录打开转盘锁 Open the Lock思路Tag打开转盘锁 Open the Lock 有一个带4个圆形转轮的转盘锁&#xff0c;每个转轮有10个数字 0-9&#xff0c;转轮可以自由转。每次旋转只能转一个转轮的一个数字。 初始数字为0000&#xff0c;一个代表4个转轮数字的字符串。 列表deade…

DFS与BFS算法总结

知识概览 DFS、BFS都可以对整个问题空间进行搜索&#xff0c;搜索的结构都是像一棵树。DFS会尽可能往深搜&#xff0c;当搜索到叶节点时就会回溯。而BFS每一次只会扩展一层。 DFS与BFS的区别&#xff1a; 搜索方式数据结构空间复杂度性质DFS栈O(h)&#xff0c;其中h为搜索空间…

Leetcode—2415.反转二叉树的奇数层【中等】

2023每日刷题&#xff08;六十&#xff09; Leetcode—2415.反转二叉树的奇数层 BFS的C实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(n…

Dominosa/数邻(2) | C++ | BFS

目录 一、Dominosa简介二、题目描述三、编程思路四、完整代码 一、Dominosa简介 Dominosa&#xff0c;中文名称为数邻&#xff0c;是一种棋盘游戏&#xff0c;基于骨牌的排列和匹配来进行。它是从骨牌游戏中发展而来的&#xff0c;在骨牌的基础上添加了一些规则和难度。具体的游…

【LeetCode刷题笔记】DFSBFS(二)

994. 腐烂的橘子(树/图的BFS问题) 解题思路: 多源BFS ,首选找到 所有的腐烂的橘子 ,放入队列中,然后进行 BFS 广搜,广搜的 层数 - 1 就是所需要花费的分钟数。 在最开始先扫描一遍二维数组,将所有的 腐烂的橘子 加入 队列 ,同时统计新鲜橘子的数量 <

深度优先遍历和广度优先遍历代码实现

直接跳到 3. 看代码&#xff0c;注释较为详细 理论知识参考 代码参考(写的太好了&#xff01;) 1. 什么是图 表示 “多对多” 的关系包含&#xff1a;1. 一组顶点&#xff1a;通常用V(vertex) 表示顶点集合&#xff1b;2. 一组边&#xff1a;通常用E(edge) 表示边的集合。 边…

【蓝桥杯 第十届省赛Java B组】真题训练(A - H)H待更新

目录 A、组队 - 看图一眼出答案 B、不同子串 - 字符串模拟 set去重 C、数列求值 - 模拟取余 D、数的分解 - 三重暴力 E、迷宫 - bfs 判断路径 F、特别数的和 - 弱智模拟 G、外卖店优先级 - map 暴力&#xff08;90%通过率&#xff09; H、人物相关性分析 - A、组队 -…

LeetCode 127. 单词接龙

原题目&#xff1a;https://leetcode-cn.com/problems/word-ladder/ 代码&#xff1a; const int INF 1 << 20;class Solution {public://判断两个单词是不是只相差一次变换&#xff0c;如果是&#xff0c;添加边bool transformCheck(const string& str1, const st…

bzoj 4243: 交朋友

Description 你是活跃在历史的幕后的一名特工&#xff0c;为了世界的和平而日以继夜地努力着。这个世界有N个国家&#xff0c;编号为1...N&#xff0c;你的目的是在这N个国家之间建立尽可能多的友好关系。你为了制定一个特工工作的计划&#xff0c;作出了一张当今国际关系的示意…

题14.2022寒假天梯赛训练天梯赛训练-小字辈 (25 分)

文章目录题14.&2022寒假天梯赛训练&天梯赛训练-小字辈 (25 分)一、题目二、题解题14.&2022寒假天梯赛训练&天梯赛训练-小字辈 (25 分) 一、题目 二、题解 本题的关键在于如何找到最小辈&#xff0c;我们可想着将输入的parent与下标作为两个邻接的顶点存入图中&…

题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分)

文章目录题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分)一、题目二、题解题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分) 一、题目 二、题解 开始看这题的时候就没懂啥意思&#xff0c;想好久才知道我们可以把L个M*N的切片叠起来变成一个MNL的三维立体&#xff08;切片像素…

【专题一 简单搜索】3. Catch That Cow

题目 Farmer John has been informed of the location of a fugitive cow and wants to catch her immediately. He starts at a point N (0 ≤ N ≤ 100,000) on a number line and the cow is at a point K (0 ≤ K ≤ 100,000) on the same number line. Farmer John has t…

洛谷 P1379 八数码难题 (最小步数模型)

题面 题解 BFS经典八数码问题 &#xff1a;抽象成图&#xff0c;每一个状态都是都与上一个点相连&#xff0c;且距离为1&#xff0c;最终状态就是终点&#xff0c;转化成了从开始点到最终点的距离最小&#xff0c;因为每个点之间的距离都是1&#xff0c;所以直接用BFS来做即可 …

题目 1426: 蓝桥杯历届试题-九宫重排

题目描述 如下面第一个图的九宫格中&#xff0c;放着 1~8 的数字卡片&#xff0c;还有一个格子空着。与空格子相邻的格子中的卡片可以移动到空格中。经过若干次移动&#xff0c;可以形成第二个图所示的局面。 我们把第一个图的局面记为&#xff1a;12345678. 把第二个图的局面…

旅行前的准备 (25分)

LX同学想要游遍整个中国甚至全世界&#xff01;所以这个国庆假期她计划去长沙玩。但是在她做旅行前的准备的时候&#xff0c;她收到了老师的作业&#xff0c;并且要求在国庆假期结束之前上交&#xff01;LX同学非常的生气&#xff0c;告诉了你这个消息。你也觉得实在是太过分了…

第十届蓝桥杯省赛B组题解记录

1.组队 思路&#xff1a;从每个位置可以选取的人选入手&#xff0c;每个人选不可重复&#xff0c;组合求最大。 方法一&#xff1a;深搜dfs #include<bits/stdc.h> using namespace std; int team[20][6],maxs0,vis[20]; void dfs(int sum,int n) //sum为出场运动员的…

迷宫问题题

迷宫问题-广度优先搜索题目信息输入输出测试样例解答题目信息 迷宫有一个入口&#xff0c;一个出口。一个人从入口走进迷宫&#xff0c;目标是找到出口。阴影部分和迷宫的外框为墙&#xff0c;每一步走一格&#xff0c;每格有四个可走的方向&#xff0c;探索顺序为地图方向&am…

acwing 1100 抓住那头牛(最短路模型)

题面 题解 我们可以将坐标轴看成一个图&#xff0c;从起点n开始&#xff0c;可以到达n1,n-1,n*2的点&#xff0c;要求n到k的最短距离&#xff0c;那么我们可以设到达每个点的距离是1&#xff0c;然后用bfs进行搜索&#xff0c;搜索到k时&#xff0c;dist[k]就是n到k的最短距离 …

acwing 1098 城堡问题(Flood Fill)

题面 题解(Flood Fill 模型) 用bfs遍历每一个房间&#xff0c;每次遍历返回房间的大小&#xff0c;同时标记这些房间已经被访问过&#xff0c;时间复杂度O(nm) &#xff0c;每个房间的墙壁信息可以提前用坐标表示&#xff0c;我们设坐标为 int dx[4] {0, -1, 0, 1} ; int dy[4…

LeetCode 1306. 跳跃游戏 III

原题目&#xff1a;https://leetcode-cn.com/problems/jump-game-iii/ 思路&#xff1a; 进行bfs搜索&#xff0c;注意判断溢出的边界条件。 为了防止重复访问导致的死循环&#xff0c;我们用unordered_set记录遍历过的位置。 代码&#xff1a; class Solution { public:boo…

LeetCode 515. Find Largest Value in Each Tree Row

原题目&#xff1a;https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row/ 思路&#xff1a; 采用bfs&#xff0c;每一层用manx记录最大值&#xff0c;用数组保存。 代码&#xff1a; class Solution { public:vector<int> largestValues(TreeNode* …

LeetCode 133. 克隆图

原题目&#xff1a;https://leetcode-cn.com/problems/clone-graph/ 思路&#xff1a; BFS&#xff0c;因为是深拷贝&#xff0c;所以要使用new新建节点。 用v来存储新建过的节点&#xff0c;visited表示访问过&#xff08;防止遍历无向图出现死循环&#xff09;。 代码&…

LeetCode 429. N-ary Tree Level Order Traversal

原题目&#xff1a;https://leetcode-cn.com/problems/n-ary-tree-level-order-traversal/ 思路&#xff1a; 和二叉树的bfs一样&#xff0c;就变换一下入队列的操作 代码&#xff1a; class Solution { public:vector<vector<int>> levelOrder(Node* root) {if(…

LeetCode 207. Course Schedule

原题目&#xff1a;https://leetcode-cn.com/problems/course-schedule/ 思路&#xff1a; 构建图结构和入度数组。每次遍历入度为0的点&#xff0c;以该点为头结点的边&#xff0c;其尾结点的入度-1. 如果最后入度为0的数和numclass相等&#xff0c;就返回true&#xff1b; …

LeetCode 103. Binary Tree Zigzag Level Order Traversal

原题目&#xff1a;https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal/ 思路&#xff1a; 普通的BFS&#xff0c;加一个flag&#xff0c;判断该层是逆序还是顺序就好了。 代码&#xff1a; class Solution { public:vector<vector<int>&g…

第3章:搜索与图论【AcWing】

文章目录 图的概念图的概念图的分类有向图和无向图 连通性连通块重边和自环稠密图和稀疏图参考资料 图的存储方式邻接表代码 邻接矩阵 DFS全排列问题题目描述思路回溯标记剪枝代码时间复杂度 [N 皇后问题](https://www.luogu.com.cn/problem/P1219)题目描述全排列思路 O ( n ! …

BFS和DFS遍历二叉树的Java实现

参考&#xff1a;https://blog.csdn.net/Gene1994/article/details/85097507 文章目录1 DFS1.1递归1.2 栈2 BFSDFS可以使用递归和栈实现&#xff1b;BFS只能使用队列实现。 1 DFS 1.1递归 //DFS递归实现 public void DFSWithRecursion(TreeNode root) {if (root null)retur…

#10030. 「一本通 1.4 练习 2」Keyboarding

[ICPC2015 WF]Keyboarding 题面翻译 给定一个 r r r 行 c c c 列的在电视上的「虚拟键盘」&#xff0c;通过「上&#xff0c;下&#xff0c;左&#xff0c;右&#xff0c;选择」共 5 5 5 个控制键&#xff0c;你可以移动电视屏幕上的光标来打印文本。一开始&#xff0c;光…

BFS 的使用场景总结:层序遍历、最短路径问题

今天在刷LeetCode算法题的时候&#xff0c;看到一篇非常好的解析&#xff0c;分享给大家。 BFS算法的实现与应用场景详解

使用 BFS 广度优先搜索算法求字符串相似度

现在有2个字符串&#xff0c;mother和monster&#xff0c;将 mother 变成 monster&#xff0c;每次操作只能是 修改一个字母&#xff0c;删除一个字母&#xff0c;添加一个字母&#xff0c;则将 monther 变成 Monster 的编辑路径有很多种&#xff0c;我们需要求出最短的编辑路径…

智力题——5L的桶和3L的桶如何装4L的水

文章目录智力题——5L的桶和3L的桶如何装4L的水问题描述直观分析问题建模问题解决智力题——5L的桶和3L的桶如何装4L的水 问题描述 有一个5L的桶A和一个3L的桶B以及无限量的水&#xff0c;如何让5L的桶装4L的水。 支持操作&#xff1a;加水&#xff0c;倒水&#xff0c;A倒入…

1091 Acute Stroke (30point(s))

1091 Acute Stroke (30point(s)) One important factor to identify acute stroke (急性脑卒中) is the volume of the stroke core. Given the results of image analysis in which the core regions are identified in each MRI slice, your job is to calculate the volume…

图邻接表,BFS和DFS的python实现

图的邻接表实现 class V:def __init__(self, item):self.id itemself.nbrs {}self.visited Falsedef add_nbr(self, nbr, weight0):self.nbrs[nbr] weightdef get_nbrs(self):return self.nbrs.keys()def get_idx(self):return self.iddef get_weight(self, nbr):return s…

二叉树的堂兄弟 Cousins in Binary Tree

文章目录二叉树的堂兄弟 Cousins in Binary Tree思路Tag二叉树的堂兄弟 Cousins in Binary Tree 在二叉树中&#xff0c;根节点位于深度 0 处&#xff0c;每个深度为 k 的节点的子节点位于深度 k1 处。 如果二叉树的两个节点深度相同&#xff0c;但 父节点不同 &#xff0c;则…

L2-026 小字辈 (25分)

原题链接 嘻BFSDFSBFS 结构体存孩子&#xff0c;以及层数 BFS每次访问的加入的是节点queue<int> q; 对应操作的是他的孩子Node[Node[now].child[i]]和他孩子的层数Node[Node[now].child[i]].leval 直接存节点就是思路比较简单但是表示起来好长hhhh 每次便利需要记录最大…

【专题一 简单搜索】2. Dungeon Master

题目 You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed of unit cubes which may or may not be filled with rock. It takes one minute to move one unit north, south, east, west, up or down. You cannot move diagonal…

蓝桥杯 2018 C++ B组决赛 第四题

小明买了块高端大气上档次的电子手表&#xff0c;他正准备调时间呢。在 M78 星云&#xff0c;时间的计量单位和地球上不同&#xff0c;M78 星云的一个小时有 n 分钟。大家都知道&#xff0c;手表只有一个按钮可以把当前的数加一。在调分钟的时候&#xff0c;如果当前显示的数是…

沉岛思想(BFS)-朋友圈思想(并查集)

本篇博客旨在记录自已笔记&#xff0c;同时希望可给小伙伴一些帮助。本人也是算法小白&#xff0c;水平有限&#xff0c;如果文章中有什么错误之处&#xff0c;希望小伙伴们可以在评论区指出来&#xff0c;共勉 &#x1f4aa;。 沉岛思想&#xff1a; 题目&#xff1a; 给定一…

PAT甲级真题 1099 Build A Binary Search Tree (30分) C++实现 (二叉搜索树BST inorder中序遍历得到有序数列)

题目 A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties: The left subtree of a node contains only nodes with keys less than the node’s key. The right subtree of a node contains only nodes with keys greate…

剑指 offer acwing 24机器人的运动范围 (BFS)

题面 题解 BFS 问题 &#xff0c;注意判断rows 和 cols 为0 的情况&#xff0c;其他就是BFS模板 代码 class Solution { public://求横纵坐标各位数之和int get_sum(int x, int y) {int sum 0;while (x) {sum x % 10;x / 10;}while (y) {sum y % 10;y / 10;}return sum;}in…

1233. 全球变暖(FloodFill + BFS)

1233. 全球变暖 你有一张某海域 NN 像素的照片&#xff0c;”.”表示海洋、”#”表示陆地&#xff0c;如下所示&#xff1a; ....... .##.... .##.... ....##. ..####. ...###. .......其中”上下左右”四个方向上连在一起的一片陆地组成一座岛屿&#xff0c;例如上图就有 2 …

【专题一 简单搜索】5. Find The Multiple

题目 Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal representation contains only the digits 0 and 1. You may assume that n is not greater than 200 and there is a corresponding m containing no more than 100 …

【专题一 简单搜索】6. Prime Path POJ-3126 Prime Path

题目 The ministers of the cabinet were quite upset by the message from the Chief of Security stating that they would all have to change the four-digit room numbers on their offices. — It is a matter of security to change such things every now and then, t…

Leetcode.2101 引爆最多的炸弹

题目链接 Leetcode.2101 引爆最多的炸弹 Rating &#xff1a; 1880 题目描述 给你一个炸弹列表。一个炸弹的 爆炸范围 定义为以炸弹为圆心的一个圆。 炸弹用一个下标从 0 开始的二维整数数组 bombs表示&#xff0c;其中 bombs[i] [xi, yi, ri]。xi 和 yi 表示第 i 个炸弹的 …

1004 Counting Leaves (30分)

原题链接 这道题本质就是在求每层叶子结点个数 DFS用惯了BFS用起来有点困难 还是要多练 DFS&#xff1a; #include <iostream> #include <vector> #include <math.h> using namespace std; const int maxn 100010; //求每层叶子结点个数 vector<int>…

剑指offer 13. 机器人的运动范围

剑指 Offer 13. 机器人的运动范围 - 力扣&#xff08;LeetCode&#xff09; (leetcode-cn.com) class Solution {int m, n, k;vector<vector<bool>> not_visited; public:int movingCount(int M, int N, int K) {m M; n N; k K;not_visited vector<vector…

【LeetCode】Sama的个人记录_31

【Q310】(md) 被围绕的区域 给定一个二维的矩阵&#xff0c;包含 ‘X’ 和 ‘O’&#xff08;字母 O&#xff09;。 找到所有被 ‘X’ 围绕的区域&#xff0c;并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。 示例: X X X XX O O X X X O XX O X X 运行你的函数后&#xff0…

数据结构与算法:链表、树、图、堆、散列表

1 链表 链表是线性数据结构&#xff08;数据元素之间存在着“一对一”关系&#xff09;&#xff0c;链表中的每个元素是一个包含数据data和引用字段的对象&#xff0c;引用字段只有next为单向链表&#xff0c;同时又prev和next为双向链表。 1.1 链表基本操作 链表读取第 i 个…

[BFS和DFS的故事]LC207--课程表(无环图的循序渐进,全网最易理解解法)

LeetCode207题目如下题目解析思路分析题目如下 题目解析 首先如果是一个环图&#xff0c;那么是无法学习的&#xff0c;例如 数学和语文&#xff0c;学数学要先学语文&#xff0c;学语文要先学数学&#xff0c;那么就学不了啊。 输入&#xff1a;numCourses 2, prerequisite…

【LeetCode刷题笔记】DFSBFS(一)

51. N 皇后 解题思路: DFS + 回溯 :由于 NxN 个格子放 N 个皇后, 同一行不能放置 2 个皇后,所以皇后必然放置在不同行 。 因此,可以从第 0 行开始,逐行地尝试,在每一个 i

A计划 骑士救公主迷宫

**A计划** 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后&#xff0c;而今&#xff0c;不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主&#xff0c;因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚&#xff0c;告招天下勇士来拯…

BFS(Breath First Search 广度优先搜索)

文章目录一、知识及框架二、案例说明案例1&#xff1a;使用bfs计算二叉树的最小高度案例2&#xff1a;解开密码锁的最少次数&#xff0c;要求&#xff1a;请写一个算法&#xff0c;初始状态为0000&#xff0c;拨出target的最少次数&#xff0c;其中避免出现deadends中的包含的任…

BFS专题

题目&#xff1a; 在m*n矩阵中找出块的个数&#xff08;块“相邻为1的点组合而成&#xff09; 1 1 0 0 0 0 1 1 1 0 0 1 则相邻整体块数为 3 BFS实现&#xff1a; #include <cstdio> #include <iostream> #include <queue> #include <algorithm> #inc…

蓝桥杯冲刺 - week1

文章目录&#x1f4ac;前言&#x1f332;day192. 递归实现指数型枚举843. n-皇后问题&#x1f332;day2日志统计1209. 带分数&#x1f332;day3844. 走迷宫1101. 献给阿尔吉侬的花束&#x1f332;day41113. 红与黑&#x1f332;day51236. 递增三元组&#x1f332;day63491. 完全…

SHUOJ 1552 滑雪(小数据)(BFS)

题目&#xff1a;SHUOJ-1552 题目链接&#xff1a;http://202.121.199.212/JudgeOnline/problem.php?id1552 题目&#xff1a; 1552: 滑雪(小数据) Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 38 Solved: 29[Submit][Status][Web Board]Description Michael喜欢滑雪百…

算法竞赛进阶指南---(A*) 八数码

题面 题解(A*) A*算法 在最小步数模型中&#xff0c;当状态数较多时&#xff0c;不能直接用BFS来做&#xff0c;我们就可以考虑A*算法来减少一些没必要的搜索状态 引入一个估值函数&#xff0c;用来估计某个点到达终点的距离。记f是估值函数&#xff0c;g是真实值&#xff0c;…

815. 公交路线

2021-06-28 LeetCode每日一题 链接&#xff1a;https://leetcode-cn.com/problems/bus-routes/ 标签&#xff1a;广度优先搜索、数组、哈希表 题目 给你一个数组 routes &#xff0c;表示一系列公交线路&#xff0c;其中每个 routes[i] 表示一条公交线路&#xff0c;第 i 辆公…

AcWing 920. 最优乘车(单源最短路)

题目链接 920. 最优乘车 - AcWing题库高质量的算法题库https://www.acwing.com/problem/content/922/ 来源 NOI1997 题解 在每一条巴士线路内部&#xff0c;将车站看成点&#xff0c;将每个车站与其它车站的线路看成边权为1的边&#xff0c;对整个图做一遍BFS就可以得到1号店…

CodeForces - 510B Fox And Two Dots(BFS)

传送门 题意&#xff1a;判断相同字母能否连成环&#xff1b; bfs直接开搞&#xff1b; #include<bits/stdc.h> using namespace std; int d[4][2] {0,1,1,0,0,-1,-1,0};//遍历四个方向 int vis[100][100]; char tu[100][100]; int n, m, ans; void bfs(int x, int y, i…

同化的题解

时间限制: 1000ms 空间限制: 524288kB 题目描述 古人云&#xff1a;“近朱者赤近墨者黑”。这句话是很有道理的。这不鱼大大和一群苦命打工仔被安排进厂拧螺丝了。 进厂第一天&#xff0c;每个人拧螺丝的动力k都是不同且十分高涨的。但是当大家坐在一起后会聊天偷懒&#xf…

宽度优先搜索BFS算法

宽度优先搜索BFS算法 什么是宽度优先搜索&#xff1f; 宽度优先搜索&#xff08;BFS,Breadth_First Search&#xff09;总是优先搜索距离初始状态近的状态&#xff0c;也就是说&#xff0c;他是按照开始状态->只需一次转移就可以到达的所有状态->只需两次转移就可以到达…

拓扑序列(拓扑排序)

文章目录摘要什么是拓扑序列拓扑序的求法摘要 本文主要介绍拓扑序列&#xff0c;和求解拓扑序列的方法。 什么是拓扑序列 拓扑序列是对于有向图而言的&#xff0c;有向图的拓扑序是其顶点的线性排序&#xff0c;使得对于从顶点uuu 到顶点vvv的每个有向边uvuvuv&#xff0c; …

poj 2049 Finding Nemo

bfs的水题&#xff0c;主要是理解题意。 题意&#xff1a;有一个迷宫&#xff0c;告诉你由墙和门组成&#xff0c;墙不能走&#xff0c;门可以走&#xff0c;人的初始位置不会在墙和门上&#xff0c;求nemo走出迷宫所需步数。 思路&#xff1a;从起始点开始bfs&#xff0c;最…

AcWing算法提高课-2.3.1矩阵距离

算法提高课整理 CSDN个人主页&#xff1a;更好的阅读体验 本文同步发表于 CSDN | 洛谷 | AcWing | 个人博客 原题链接 题目描述 给定一个 01 矩阵&#xff0c;求矩阵中每个元素离 1 的最短曼哈顿距离。 输入格式 第一行两个整数 n , m n,m n,m。 接下来一个 n n n 行 …

leetcode_111 Binary Tree Level Order Traversal

题目&#xff1a; Given a binary tree, return the level order traversal of its nodes values. (ie, from left to right, level by level). For example: Given binary tree [3,9,20,null,null,15,7], 3/ \9 20/ \15 7return its level order traversal as: [[3],[9…

CODE+ 第三次网络赛 华尔兹【待更新】

就是一个搜索&#xff0c;但是好像还是有点问题&#xff0c;第六组样例没过去。。 #include <bits/stdc.h> #define cl(arr,val) memset(arr,val,sizeof(arr)) using namespace std; char mp[1500][1500]; int vis[1500][1500]; int n,m,sx,sy,tx,ty; int dx[] {0,0,1,-…

acwing 1076 迷宫问题(最短路模型)

题面 题解(最短路模型) 迷宫问题输出路径&#xff0c;因为每个点之间的距离都是1&#xff0c;所以用BFS搜索出来的结果就是最短的距离&#xff0c;我们新开一个数组&#xff0c;然后我们从终点开始最终搜索到起点&#xff0c;记录每个点的前一个点是从哪转移过来的&#xff0c;…

SHUOJ 1659 跳马问题 (BFS)

题目&#xff1a;SHUOJ-1659 题目链接&#xff1a;http://202.121.199.212/JudgeOnline/problem.php?id1659 题目&#xff1a; 1659: 跳马问题 Time Limit: 1 Sec Memory Limit: 32 MBSubmit: 271 Solved: 75[Submit][Status][Web Board]Description 给定8*8方格棋盘&…

图论——单源路径问题

文章目录图论——单源路径问题问题分析代码指定终点代码图论——单源路径问题 问题分析 对于本小节&#xff0c;我们只讨论简单无向无权图的单源路径问题。 单源路径是指从某个给定顶点出发找到一条路径到其他顶点&#xff0c;其实在dfs或者bfs的过程中我们已经遍历了每个顶…

[蓝桥杯]迷宫(路径的存储和打印是关键,orz)

//存储容器&#xff1a;1&#xff1a;node father[maxn][maxn];//当前节点的父节点 2&#xff1a;struct node//*** { int x,y,d; char pos;//存储D L R U }; 具体存储&#xff1a; for(int i0;i<4;i){int toxnow.xdix[i];int toynow.ydiy[i];father[tox][toy].x…

【Python搜索算法】广度优先搜索(BFS)算法原理详解与应用,示例+代码

目录 1 广度优先搜索 2 应用示例 2.1 迷宫路径搜索 2.2 社交网络中的关系度排序 2.3 查找连通区域 1 广度优先搜索 广度优先搜索&#xff08;Breadth-First Search&#xff0c;BFS&#xff09;是一种图遍历算法&#xff0c;用于系统地遍历或搜索图&#xff08;或树…

计蒜客-1859-奇怪的电梯-bfs

呵呵&#xff0c;有一天我做了一个梦&#xff0c;梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯&#xff0c;而且第 ii 层楼 (1 \le i \le N)(1≤i≤N) 上有一个数字 K_i\ (0 \le K_i \le N)K i ​ (0≤K i ​ ≤N)。电梯只有四个按钮&#xff1a;开&#xff0c;关&am…

计蒜客-1769-合租bfs

蒜头君来到一座陌生的城市打工&#xff0c;他和几个朋友合租一个房子。房东给他们发来了户型图&#xff0c;这个房子非常大&#xff0c;而且布局很奇怪。具体来说&#xff0c;房子可以被看做一个 N\times MNM 的矩形&#xff0c;有墙壁的地方被标记为’#’&#xff0c;其他地方…

【LeetCode刷题笔记】二叉树(二)

257. 二叉树的所有路径 解题思路: 1. DFS 前序遍历 ,每次递归将 当前节点的拼接结果 传递到 下一层 中,如果当前节点是 叶子节点 ,就将 当前拼接结果 收集答案并返回。 注意:路径path结果可以使用 String 来拼接,这样可以避免回溯处理。

剑指offer面试题6:从尾到头打印链表

/*题目&#xff1a;从尾到头打印链表*/ /*1.可以用栈来保存遍历到的每个节点&#xff0c;随后遍历一遍栈即可2.可以用递归的特性&#xff0c;要遍历一个节点的时候&#xff0c;就遍历这个节点的下一个节点*/#include <iostream> using namespace std; void PrintListReve…

使用 javascript 在 n*m 网格中演示 BFS 广度优先搜索算法求最短路径

完整代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style type"text/css">#box1 table{border: 0px;border-collapse: collapse;cursor: poi…

PAT A1076 Forwards on Weibo (30 分)

用BFS搜索一遍图&#xff0c;同时记录下每个结点的层数以及转发数 #include <cstdio> #include <vector> #include <queue>using namespace std;struct Node{int v;int layer; }node[1100];int n, k; bool visited[1100]; int max_num[1100]; vector<N…

抓住那头牛(广搜)

描述农夫知道一头牛的位置&#xff0c;想要抓住它。农夫和牛都位于数轴上&#xff0c;农夫起始位于点N(0<N<100000)&#xff0c;牛位于点K(0<K<100000)。农夫有两种移动方式&#xff1a; 1、从X移动到X-1或X1&#xff0c;每次移动花费一分钟2、从X移动到2*X&#x…

第九届蓝桥杯省赛C/C++B组 试题9:全球变暖

这题目看了好久都没看懂&#xff0c;最后发现是样例图没对齐的问题&#xff0c;吐了。 打个BFS模板解决的事。 #include <cstdio> #include <queue> using namespace std; const int MAXN 1010;int n; int sum 0; char G[MAXN][MAXN]; bool vis[MAXN][MAXN] {f…

第十一届蓝桥杯国赛C/C++B组 试题B:扩散

呜呜没想到国赛第二题写了半小时还是错了&#xff0c;没想到题目坐标还可以取负数啊&#xff0c;大意了~ 答案&#xff1a;20312088 #include <cstdio> #include <queue> using namespace std; const int MAXN 10000;struct Node{int x, y;int min 0; };int ans…

八数码问题的初次解决(康托展开+bfs)

八数码问题&#xff0c;常常是很多书上的例题&#xff0c;他作为一道经典的搜索题&#xff0c;被很多人誉为 不做过人生不完整&#xff0c;然而&#xff0c;对于这道题&#xff0c;实在是有太多高端的解法&#xff0c;然而我对于A*的理解还颇有偏差&#xff0c;于是选择了最普通…

二叉树的层序遍历 【leetcode - 107 - 简单】

胡扯&#xff1a;真好&#xff0c;我上一个题是用 Arraylist集合 来完成的。对于这个题来说&#xff0c;那就是很简单了每次添加到开头&#xff0c;就相当于反过来了。 至于 二叉&#xff0c;还是多叉&#xff0c;无所谓了。 思路&#xff1a; 1、参考上一个多叉树的 层序遍历…

图论——遍历算法

文章目录图论——遍历算法DFS遍历BFS遍历建图类图论——遍历算法 DFS遍历 深度优先搜索&#xff0c;以深度优先&#xff0c;直到走不下去&#xff0c;回退&#xff0c;对应的数据结构stack 对于上图dfs的流程如下 第一个节点0入栈&#xff0c;把0标记为已访问 遍历0的所有邻…

图论搜索:如何使用多源BFS降低时间复杂度

图论搜索中&#xff0c;单源BFS和多源BFS搜索距离。 文章目录1. leetcode中BFS图论搜索题2. 单源 BFS3. 多源 BFS4. 多源BFS扩展5. 总结1. leetcode中BFS图论搜索题 leetcode链接&#xff1a;1162. 地图分析 你现在手里有一份大小为 n x n 的 网格 grid&#xff0c;上面的每个…

【算法与数据结构】——图的遍历(二、广度优先搜索BFS)

图的遍历&#xff08;二、广度优先搜索BFS&#xff09; 宽度优先搜索(BFS, Breadth First Search)是一个针对图和树的遍历算法。发明于上世纪50年代末60年代初&#xff0c;最初用于解决迷宫最短路径和网络路由等问题。 对于下面的树而言&#xff0c;BFS方法首先从根节点1开始&…

Acwing 1233. 全球变暖 (每日一题)

如果你觉得这篇题解对你有用&#xff0c;可以点个赞或关注再走呗&#xff0c;谢谢你的关注~ 题目描述 你有一张某海域 NN 像素的照片&#xff0c;”.”表示海洋、”#”表示陆地&#xff0c;如下所示&#xff1a; … .##… .##… …##. …####. …###. … 其中”上下左右”…

leetcode_404

一&#xff0c;题目大意 给出一个二叉树&#xff0c;求出这个二叉树所有左叶子节点的和。 二、分析&#xff1a;这是一道二叉树的题目&#xff0c;对于二叉树的问题&#xff0c;很多都可以用遍历的思想解决。 1&#xff0c;二叉树DFS遍历&#xff08;递归&#xff0c;非递归…

算法设计技巧: 广度优先搜索(BFS)

给定一个图G(V,E)G(V,E)G(V,E), 其中VVV代表顶点的集合, EEE代表边的集合. 给定初始点s∈Vs\in Vs∈V, 遍历图GGG所有顶点一般有两种方法: 广度优先(Breadth-first-search)和深度优先(Depth-first-search). 本文介绍广度优先的思想和实现方式. 广度优先 如下图所示, 从sss开始…

用正六边形分割地图

给定地图上的区域(用多边形顶点的经纬度表示), 需要用正多边形(三角形/正方形/六边形)对地图上的区域进行填充. 在一些实际应用中, 这样做的是为了划分标准的作业单元, 例如定义共享自行车的骑行范围, 物流的配送范围, 外卖骑手的接单范围等. 效果如下(杭州市西湖区). 问题描…

【图解算法】有趣的二分图问题——一起来染色

我们定义一个二分图 如果我们能将一个图的节点集合分割成两个独立的子集A和B&#xff0c;并使图中的每一条边的两个节点一个来自A集合&#xff0c;一个来自B集合&#xff0c;我们就将这个图称为二分图。 请说人话&#xff01; 在这个图中&#xff0c;一条边的两端节点&#xf…

二叉树广度优先遍历(BFS) 深度优先遍历(DFS)

二叉树的遍历 树的遍历是一种重要的运算。所谓遍历是指对树中所有节点信息的访问&#xff0c;即一次对树中每个接地访问一次且仅访问一次&#xff0c;将这种对所有节点的访问称为遍历&#xff08;travelsal&#xff09;。    树的两种重要遍历模式是深度优先遍历&#xff08;…

第二章 搜索

本篇博文是笔者归纳汇总的AcWing基础课题集&#xff0c;方便读者后期复盘巩固~ PS&#xff1a;本篇文章只给出完整的算法实现&#xff0c;并没有讲解具体的算法思路。如果想看算法思路&#xff0c;可以阅读笔者往期写过的文章&#xff08;或许会有&#xff09;&#xff0c;也可…

N叉树的层序遍历 BFS 【 leetcode - 429 - 简单】

胡扯&#xff1a;前几天在刷DFS的题&#xff0c;然后把简单的题刷完后&#xff0c;开始准备BFS&#xff0c;发现BFS 和 DFS 的题都有些重复。只剩下两个题了。这个BFS的层序遍历&#xff0c;是个简单题&#xff0c;但是也写了一会&#xff0c;主要是之前没有这方面的经验。 思…

LeetCode 0987.二叉树的垂序遍历:遍历时存节点信息,遍历完自定义排序

【LetMeFly】987.二叉树的垂序遍历&#xff1a;遍历时存节点信息&#xff0c;遍历完自定义排序 力扣题目链接&#xff1a;https://leetcode.cn/problems/vertical-order-traversal-of-a-binary-tree/ 给你二叉树的根结点 root &#xff0c;请你设计算法计算二叉树的 垂序遍历…

树与图的深度优先遍历、广度优先遍历算法总结

知识概览 树是特殊的图&#xff0c;是无环连通图图分为有向图和无向图。因为无向图可以转化为有向图&#xff0c;树可以转化为图。因此本文讨论有向图。 树和图的存储&#xff1a; 邻接矩阵&#xff1a;空间复杂度&#xff0c;适合存储稠密图。邻接表&#xff1a;存储每个点可以…

数据结构知识点总结12-(第六章.图)-图的存储结构及图的遍历

专栏主页&#xff1a;计算机专业基础知识总结&#xff08;适用于期末复习考研刷题求职面试&#xff09;系列文章https://blog.csdn.net/seeker1994/category_12585732.html ...... 数据结构知识点总结11-(第六章.图)-图的基本概念 数据结构知识点总结13-(第六章.图)-图的应用…

PAT 1090. Highest Price in Supply Chain (25)(求叶节点的最高层数,bfs)

官网 题目 1090. Highest Price in Supply Chain (25) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue A supply chain is a network of retailers&#xff08;零售商&#xff09;, distributors&#xff08;经销商&a…

【LeetCode】 994. 腐烂的橘子 2020年3月4日

题目 题目传送门&#xff1a;传送门&#xff08;点击此处&#xff09; 题解 思路 每个坏橘子四周的好橘子&#xff0c;每一分钟之后都会变成坏橘子&#xff0c;呈现了一种扩散的效果&#xff0c;其实这恰好对应了图的广度遍历&#xff0c;我们就可以借助队列来实现这道题目…

【LeetCode:2368. 受限条件下可到达节点的数目 + BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

三、图的遍历——广度优先遍历

广度优先遍历&#xff0c;又称为广度优先搜索&#xff0c;简称BFS。 如果说图的深度优先遍历类似树的前序遍历&#xff0c;那么图的广度优先遍历就类似于树的层序遍历了。 邻接矩阵方式的广度优先遍历 #include<iostream> #include<vector> #include<queue>…

历届试题 波动数列

问题描述观察这个数列&#xff1a;1 3 0 2 -1 1 -2 ...这个数列中后一项总是比前一项增加2或者减少3。栋栋对这种数列很好奇&#xff0c;他想知道长度为 n 和为 s 而且后一项总是比前一项增加a或者减少b的整数数列可能有多少种呢&#xff1f;输入格式输入的第一行包含四个整数 …

【算法竞赛模板】二叉树专题(含前中后序遍历建树、DFS与BFS等对二叉树的操作)

二叉树专题一、构建二叉树① 在中序遍历中对根节点快速定位② 前序 中序 遍历构建二叉树③ 后序 中序 遍历构建二叉树二、前中后序 遍历二叉树① 前序遍历二叉树 (非递归)② 中序遍历二叉树 (非递归)③ 后序遍历二叉树 (非递归)三、变种题 之 二叉树① BFS层次遍历二叉树② D…

趣味算式(蓝桥杯)

匪警请拨110,即使手机欠费也可拨通&#xff01; 为了保障社会秩序&#xff0c;保护人民群众生命财产安全&#xff0c;警察叔叔需要与罪犯斗智斗勇&#xff0c;因而需要经常性地进行体力训练和智力训练&#xff01; 某批警察叔叔正在进行智力训练&#xff1a; 1 2 3 4 …

Leetcode.1631 最小体力消耗路径

题目链接 Leetcode.1631 最小体力消耗路径 Rating &#xff1a; 1948 题目描述 你准备参加一场远足活动。给你一个二维 rows x columns的地图 heights&#xff0c;其中 heights[row][col]表示格子 (row,col)(row, col)(row,col) 的高度。一开始你在最左上角的格子 (0,0)(0, 0)…

AcWing算法提高课-2.1.3山峰和山谷

算法提高课整理 CSDN个人主页&#xff1a;更好的阅读体验 原题链接 题目描述 FGD 小朋友特别喜欢爬山&#xff0c;在爬山的时候他就在研究山峰和山谷。 为了能够对旅程有一个安排&#xff0c;他想知道山峰和山谷的数量。 给定一个地图&#xff0c;为 FGD 想要旅行的区域&a…

加工零件的题解

原题描述&#xff1a; 时间限制: 1000ms 空间限制: 524288kB 题目描述 凯凯的工厂正在有条不紊地生产一种神奇的零件&#xff0c;神奇的零件的生产过程自然也很神奇。工厂里有 位工人&#xff0c;工人们从编号。某些工人之间存在双向的零件传送带。保证每两名工人之间最多只存…

搜索专题——迷宫寻宝

原题链接&#xff1a;FZU—2285 题目描述&#xff1a; 描述&#xff1a;洪尼玛今天准备去寻宝&#xff0c;在一个n*n &#xff08;n行, n列&#xff09;的迷宫中&#xff0c;存在着一个入口、一些墙壁以及一个宝藏。由于迷宫是四连通的&#xff0c;即在迷宫中的一个位置&#x…

历届试题 剪格子 (蓝桥杯)

问题描述如下图所示&#xff0c;3 x 3 的格子中填写了一些整数。--*----|10* 1|52|--****--|20|30* 1|*******--| 1| 2| 3|------我们沿着图中的星号线剪开&#xff0c;得到两个部分&#xff0c;每个部分的数字和都是60。本题的要求就是请你编程判定&#xff1a;对给定的m x n …

C语言问题-数据结构-迷宫问题

小叙&#xff1a;好长时间没写代码&#xff0c;确实有点生疏了。准备考研中&#xff0c;复习数据结构就想着我可以借此练练代码&#xff0c;刷一个数据结构专题。 题目链接 题意&#xff1a;很直白一个BFS问题。 思路&#xff1a;具体见代码 我们首先要理解宽搜的精髓。 然后…

2024/1/17 DFS BFS + Div 3 a,b

目录 Lake Counting S 求细胞数量 海战 组合的输出 div3 A. Square div3 B. Arranging Cats Lake Counting S P1596 [USACO10OCT] Lake Counting S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 感谢大佬的指点&#xff01;&#xff01;&#xff01;&#xff01; 思…

【每日一题】填充每个节点的下一个右侧节点指针 II

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;BFS 其他语言python3 写在最后 Tag 【BFS】【树】【2023-11-03】 题目来源 117. 填充每个节点的下一个右侧节点指针 II 题目解读 为二叉树中的每一个节点填充下一个节点。 解题思路 方法一&#xff1a;BFS 本题题目…

LeetCode 399:除法求值(图的bfs遍历)

题目 给你一个变量对数组 equations 和一个实数值数组 values 作为已知条件&#xff0c;其中 equations[i] [Ai, Bi] 和 values[i] 共同表示等式 Ai / Bi values[i] 。每个 Ai 或 Bi 是一个表示单个变量的字符串。 另有一些以数组 queries 表示的问题&#xff0c;其中 quer…

leetcode513找树左下角的值

解法1&#xff1a;BFS 思路就是层序遍历 用队列记住每层的元素&#xff0c;如果每次记住每层的第一个元素 ---->https://programmercarl.com/0102.%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E5%B1%82%E5%BA%8F%E9%81%8D%E5%8E%86.html#_102-%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A…

JavaScript数据结构-7-1图广度优先搜索

图用邻接表法表示&#xff0c;其中顶点存储在数组中&#xff0c;边存储在以顶点为键&#xff0c;以其它相邻的顶点的数组为值的字典中&#xff1b; 图的广度优先搜索树其实就是二叉树的层次遍历&#xff0c;遍历结果存放在兄弟节点表示法的树中。 <!DOCTYPE html> <…

DFS和BFS下的迷宫问题

深度优先搜索&#xff08;DFS&#xff09; 类似于数的先根遍历&#xff0c;是数的先根遍历的推广。假设初始状态是图中所有的顶点都未曾被访问&#xff0c;则深度优先搜索可以从图中的某个顶点出发&#xff0c;访问此顶点&#xff0c;然后依次从v未被访问的邻接点出发深度优先…

695. 岛屿的最大面积(中等)- LeetCode

题目描述 自己解法 广度优先搜索&#xff08;BFS&#xff09;&#xff0c;遍历过的点都置0&#xff0c;时间复杂度O(m∗n)O(m*n)O(m∗n)&#xff0c;空间复杂度O(min[m,n])O(min[m,n])O(min[m,n]) class Solution:def maxAreaOfIsland(self, grid: List[List[int]]) -> in…

宽度优先搜索(BFS):POJ3669--Meteor Shower

本题题意为&#xff1a;陨石落下会砸坏第一象限方块&#xff0c;周围的四个方块也会损坏。你只能在当前完好的方块上逃离&#xff0c;问你能不能逃脱&#xff0c;最短时间是多少&#xff1f;显然这题类似于迷宫问题&#xff0c;求最短路径&#xff0c;一道基本广搜题。应该注意…

【LeetCode: 433. 最小基因变化 + BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

【图论(1)】图的存储、遍历与拓扑排序

5月16-5月18日学习内容 文章目录 一、图是什么二、图的存储1、直接存边法2、邻接矩阵法3、邻接表法4、链式前向星时间复杂度分析 三、图的遍历DFSBFS 四、拓扑排序&#xff08;今天实在没时间写了&#xff0c;明天写&#xff09; 一、图是什么 这是oi.wiki给的定义 简而言之…

【LeetCode: 994. 腐烂的橘子 + BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

CSP 2015 03 04 网络延时 DFS BFS

一 、 DFS #include<iostream> #include<vector> #include<cstring> #define MAX 20005 using namespace std;int m, n; vector<int> g[MAX]; int max_i 0; int max_s 0; int visit[MAX] {0}; void dfs(int cur, int s){if(s > max_s){max_s …

Educational Codeforces Round 163 (Rated for Div. 2)(A,B,C,D,E)

比赛链接 好忙好忙好忙&#xff0c;慢慢补老比赛的题解了。 这场没啥算法&#xff0c;全是思维。有也是BFS&#xff0c;屎。 A. Special Characters 题意&#xff1a; 您将得到一个整数 n n n 。 您的任务是构建一串大写的拉丁字母。此字符串中必须正好有 n n n 个特殊字…

浅谈搜索剪枝

什么是剪枝 搜索一般分为DFS与BFS 常用的搜索通常是判重&#xff0c;因为BFS一般寻找的是最优路径&#xff0c;重复的话必定不会在之前的情况前产生最优解 而DFS也就是深搜&#xff0c;它的进程近似一棵树&#xff08;通常叫做DFS树&#xff09; 而剪枝就是一种生动的比喻&…

蓝桥杯刷题--python-27--全球变暖-dfs-bfs

1.全球变暖 - 蓝桥云课 (lanqiao.cn) import os import sys # 请在此输入您的代码 sys.setrecursionlimit(60000) n int(input()) dao [] for _ in range(n): tmp list(input()) dao.append(tmp) dict [(1, 0), (0, 1), (-1, 0), (0, -1)] used [[0 for _ in range(n)] fo…

迷宫2<每日一题>

题目&#xff1a; 题目链接&#xff1a; 登录—专业IT笔试面试备考平台_牛客网 思路&#xff1a; 题目要求的是能达到要求的 最小的修改次数 我们可以通过广搜&#xff08;bfs&#xff09; 的方法来做这道题 我们可以把每次在一个位置上 不走原方向的权值当成1&#xff0…

C#,图论与图算法,有向图(Direct Graph)广度优先遍历(BFS,Breadth First Search)算法与源程序

1 图的广度优先遍历 图的广度优先遍历(或搜索)类似于树的广度优先遍历(参见本文的方法2)。这里唯一需要注意的是,与树不同,图可能包含循环,因此我们可能再次来到同一个节点。为了避免多次处理节点,我们使用布尔访问数组。为简单起见,假设所有顶点都可以从起始顶点到达…

2733: 【搜索】【广度优先】 马遍历棋盘

题目描述 有一个n*m的棋盘(1<n,m<400)&#xff0c;在某个点上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步 输入 一行四个数据&#xff0c;棋盘的大小和马的坐标 输出 一个n*m的矩阵&#xff0c;代表马到达某个点最少要走几步&#xff08;左对齐&#…

大哈的变换迷宫的题解

时间限制: 1000ms 空间限制: 524288kB 原题描述&#xff1a; 【题目描述】 大哈已经是个成年人了&#xff0c;网页游戏在他当年还是风靡一时。他记忆中有这么一款游戏。 角色一开始在迷宫的(1,1)处&#xff0c;最终要到达(n,n)的位置&#xff0c;迷宫中有一些障碍物&#…

The Pilots Brothers‘ refrigerator POJ - 2965 状态压缩BFS/思维

题目链接 题目链接 https://vjudge.net/problem/POJ-2965 原题目 The game “The Pilots Brothers: following the stripy elephant” has a quest where a player needs to open a refrigerator. There are 16 handles on the refrigerator door. Every handle can be in …

2024/1/18 DFS BFS

目录 奇怪的电梯 马的遍历 PERKET&#xff08;个人认为很抽象&#xff09; 奇怪的电梯 P1135 奇怪的电梯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路&#xff0c;还是用的bfs&#xff0c;建立一个结构体类型的队列&#xff0c;一个存当前的电梯层数&#xff0c;一…

迷宫与陷阱(蓝桥杯)

文章目录 迷宫与陷阱问题描述bfs 迷宫与陷阱 问题描述 小明在玩一款迷宫游戏&#xff0c;在游戏中他要控制自己的角色离开一间由 N x N 个格子组成的2D迷宫。 小明的起始位置在左上角&#xff0c;他需要到达右下角的格子才能离开迷宫&#xff0c;每一步&#xff0c;他可以移…

BFS讲解及JAVA实现

打算将BFS和DFS分开来说&#xff0c;这样可以说的详细点&#xff0c;并且将会在分别介绍这两种搜索算法的时候主要去实践&#xff0c;然后理论方面打算单独发出一篇文章将异同点和应用的知识&#xff0c;都会在文章末尾贴出链接的。 BFS BFS&#xff1a;也就是广度优先搜索。…

迷宫寻路

题目描述 假设一个探险家被困在了地底的迷宫之中&#xff0c;要从当前位置开始找到一条通往迷宫出口的路径。迷宫可以用一个二维矩阵组成&#xff0c;有的部分是墙&#xff0c;有的部分是路。迷宫之中有的路上还有门&#xff0c;每扇门都在迷宫的某个地方有与之匹配的钥匙&…

C++算法:图中的最短环

题目 现有一个含 n 个顶点的 双向 图&#xff0c;每个顶点按从 0 到 n - 1 标记。图中的边由二维整数数组 edges 表示&#xff0c;其中 edges[i] [ui, vi] 表示顶点 ui 和 vi 之间存在一条边。每对顶点最多通过一条边连接&#xff0c;并且不存在与自身相连的顶点。 返回图中 …

2023-3-2 刷题情况

迷宫 题目描述 这天, 小明在玩迷宫游戏。 迷宫为一个 nn 的网格图, 小明可以在格子中移动, 左上角为 (1,1), 右 下角 (n,n) 为终点。迷宫中除了可以向上下左右四个方向移动一格以外, 还有 m 个双向传送门可以使用, 传送门可以连接两个任意格子。 假如小明处在格子 (x1,y1)(…

LeetCode 102. Binary Tree Level Order Traversal

原题目&#xff1a;https://leetcode-cn.com/problems/binary-tree-level-order-traversal/ 思路1&#xff1a; 用队列进行BFS。并用结构体node保存节点和深度。当深度不同时进行更新。 注意最后一次的判断&#xff0c;如果temp不为空&#xff08;说明最后一次还有元素&#…

【蓝桥杯】 2018年决赛C/C++B组 #4 调手表 (BFS、模拟)

2018决赛真题C/CB组 调手表 问题描述 小明买了块高端大气上档次的电子手表&#xff0c;他正准备调时间呢。 在M78星云&#xff0c;时间的计量单位和地球上不同&#xff0c;M78星云的一个小时有n分钟。 大家都知道&#xff0c;手表只有一个按钮可以把当前的数加一。在调分钟的时…

[优选算法专栏]专题十五:FloodFill算法(二)

本专栏内容为&#xff1a;算法学习专栏&#xff0c;分为优选算法专栏&#xff0c;贪心算法专栏&#xff0c;动态规划专栏以及递归&#xff0c;搜索与回溯算法专栏四部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握算法。 &#x1f493;博主csdn个人主页&#xff1a;小…

【数据结构——有向图】有环无环判定、拓扑排序(DFS、BFS)

文章目录 1. 什么是有向图2. 什么是拓扑排序2. 有向图的拓扑排序2. 1 BFS 广度优先2. 2 DFS 深度优先 3. 有向图有环无环判定 1. 什么是有向图 有向图&#xff08;Directed Graph&#xff09;&#xff0c;也被称为有向图形或方向图&#xff0c;是一种图的类型。在有向图中&…

算法练习-2:送外卖

n 个小区排成一列&#xff0c;编号为从 0 到 n-1 。一开始&#xff0c;美团外卖员在第0号小区&#xff0c;目标为位于第 n-1 个小区的配送站。 给定两个整数数列 a[0]~a[n-1] 和 b[0]~b[n-1] &#xff0c;在每个小区 i 里你有两种选择&#xff1a; 1) 选择a&#xff1a;向前 a[…

Python每日一练(20230401)

目录 1. 最大子序和 &#x1f31f; 2. 从前序与中序遍历序列构造二叉树 &#x1f31f;&#x1f31f; 3. 岛屿数量 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一…

【经典专题】推箱子游戏脚本——一次BFS与多次DFS

题目引入 推箱子 是一款风靡全球的益智小游戏&#xff0c;玩家需要将箱子推到仓库中的目标位置。 游戏地图用大小为 n * m 的网格 grid 表示&#xff0c;其中每个元素可以是墙、地板或者是箱子。 现在你将作为玩家参与游戏&#xff0c;按规则将箱子 ‘B’ 移动到目标位置 ‘…

【LeetCode刷题笔记】二叉树(一)

102. 二叉树的层序遍历 解题思路: 1. BFS广度优先遍历 ,使用队列,按层访问 解题思路: 2. 前序遍历 , 递归 ,在递归方法参数中,将 层索引

AcWing算法提高课-2.1.2城堡问题

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 题目传送门点这里 题目描述 1 2 3 4 5 6 7 #############################1 # | # | # | | ######---#####---#---#####---#2 # # | # # # # ##---#…

图的遍历方式 深度优先广度优先

恰巧离散数学学到了图的矩阵表示&#xff08;最后一节了&#xff09;&#xff0c;复习一下图的遍历方式吧&#xff0c;没想到网课上到了将近结课 一、举例分析 深度优先搜索&#xff08;DFS&#xff09;是一种顺序搜索&#xff0c;一条路走到黑&#xff0c;直到搜索无法进行&…

【优选算法专栏】专题十六:BFS解决最短路问题---前言

本专栏内容为&#xff1a;算法学习专栏&#xff0c;分为优选算法专栏&#xff0c;贪心算法专栏&#xff0c;动态规划专栏以及递归&#xff0c;搜索与回溯算法专栏四部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握算法。 &#x1f493;博主csdn个人主页&#xff1a;小…

打开转盘锁-模拟752-python

算法思想&#xff1a; BFS一般都是用队列来实现的&#xff0c;注意可以用哈希表来加快查询某元素在不在数组中的速度。 python class Solution:def pullup(self, arr, j):ls list(arr)if ls[j] 9:ls[j] 0else:ls[j] str(int(ls[j]) 1)return .join(ls)def pulldown(sel…

力扣算法 Java 刷题笔记【BFS 篇】hot100(一)打开转盘锁、二叉树的最小深度 2

文章目录1. 打开转盘锁&#xff08;中等&#xff09;2. 二叉树的最小深度&#xff08;简单&#xff09;1. 打开转盘锁&#xff08;中等&#xff09; 地址: https://leetcode-cn.com/problems/open-the-lock/ 2022/01/30 做题反思&#xff1a; class Solution {public int ope…

acwing 175 电路维修(双端队列广搜)

题面 题解(双端队列广搜) 双端队列 双端队列主要解决图中边的权值只有0或者1的最短路问题 操作 每次从队头取出元素&#xff0c;并进行拓展其他元素时 若拓展某一元素的边权是0&#xff0c;则将该元素插入到队头若拓展某一元素的边权是1&#xff0c;则将该元素插入到队尾 只有…

【LeetCode: 107. 二叉树的层序遍历 II + BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

acwing 1097 池塘计数 ( Flood Fill 模型)

题面 题解(Flood Fill 模型) 本题是八联通形式&#xff0c;我们直接枚举每一个格子&#xff0c;如果有水并且是没有被标记过的&#xff0c;那么就开始做Flood Fill &#xff0c;将所有联通的水源标记&#xff0c;联通的数量1&#xff0c; 代码 #include<iostream> #incl…

牛客 北京信息科技大学第十一届程序设计竞赛 D kotori和迷宫(bfs)

本来想着这不就是一个极其简单的dfs吗&#xff1f;搜到出口就1&#xff0c;并且标记该出口和更新最小步数。直接开干&#xff0c;然后一直WA。仔细一想&#xff0c;dfs还真不行&#xff0c;因为搜到出口的时候不能保证是最小步数走到的。所以&#xff0c;改用bfs就好了。 PS&a…

自动驾驶规划算法

本文将讲解BFS&#xff0c;Dijstra&#xff0c;A*&#xff0c;动态规划的算法原理&#xff0c;不正之处望读者指正&#xff0c;希望有兴趣的读者能在评论区提出一些这些算法的面试考点&#xff0c;共同学习&#xff0c;一起进步 0 图论基础 图有三种&#xff1a;无向图、有向…

【LeetCode:1631. 最小体力消耗路径 | BFS + 二分】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

【LeetCode:117. 填充每个节点的下一个右侧节点指针 II | DFS | BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

剑指Offer 32 从上到下打印二叉树 | 从上到下打印二叉树 II | 从上到下打印二叉树 III

剑指Offer 32 -Ⅱ 从上到下打印二叉树 题目地址 https://leetcode.cn/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof/ 代码实现 经典广度搜索问题 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeN…

【LeetCode: 2415. 反转二叉树的奇数层 | BFS + DFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

力扣刷题之旅:高阶篇(五)—— 网络流算法:最大流与最小割

力扣&#xff08;LeetCode&#xff09;是一个在线编程平台&#xff0c;主要用于帮助程序员提升算法和数据结构方面的能力。以下是一些力扣上的入门题目&#xff0c;以及它们的解题代码。 目录 引言 一、最大流与最小割的基本概念 二、力扣上的题目 题目描述&#xff1a;“最大…

CF1602D. Frog Traveler 1900 ——bfs

CF1602D 题意&#xff1a; 从井底距离地面 处跳到地面。当距离地面 时&#xff0c;可以选择 的一个数且向上跳 &#xff0c;然后在 处休息。然而&#xff0c;当在距离地面 时休息&#xff0c;会下滑 。问最少需要跳跃的次数&#xff0c;及每次跳跃后&#xff08;下滑之…

【重点】【BFS】542.01矩阵

题目 法1&#xff1a;经典BFS 下图中就展示了我们方法&#xff1a; class Solution {public int[][] updateMatrix(int[][] mat) {int m mat.length, n mat[0].length;int[][] dist new int[m][n];boolean[][] used new boolean[m][n];Queue<int[]> queue new Li…

【LeetCode: 103. 二叉树的锯齿形层序遍历 + BFS】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

图论岛屿问题DFS+BFS

leetcode 200 岛屿问题 class Solution {//定义对应的方向boolean [][] visited;int dir[][]{{0,1},{1,0},{-1,0},{0,-1}};public int numIslands(char[][] grid) {//对应的二维数组int count0;visitednew boolean[grid.length][grid[0].length];for (int i 0; i < grid.l…

洛谷 P1443 马的遍历

到达某个点最少走几步&#xff0c;涉及广度优先搜索&#xff08;BFS&#xff09;&#xff0c;要用到队列。 做题思路&#xff1a; 由输出的矩阵看出这个马只能按照象棋中的走法跳&#xff0c;由此可以定义一个移动的数组&#xff1a; int dir[8][2]{{2,1},{1,2},{-1,2},{-2,1}…

5347. 使网格图至少有一条有效路径的最小代价

5347. 使网格图至少有一条有效路径的最小代价 BFS中每个点只入列一次&#xff0c;但有时&#xff0c;我们可能需要bfs中允许一个点入列多次才能解决问题&#xff0c;这种方法就是SPFA。 class Solution {public int minCost(int[][] grid) {int m grid.length, n grid[0].len…

Abbott的复仇(ACM/ICPC World Finals)-刘汝佳紫书

题目连接 题意分析: 简单来说这是一道走迷宫的题目,但是不一样的地方是这道题多了一个"朝向问题",每当以不同"朝向"进入一个点,它的转向也是不同的!比如1 2 WLF,代表第一行第一列,朝向西进入该点,在该点可以左转,或者直走一步到下一个点,所以每次的"…

蓝桥杯刷题--python-23

2.危险系数 - 蓝桥云课 (lanqiao.cn) n, m map(int, input().split()) map_ [[] for i in range(n 1)] used [0 for i in range(n 1)] used_ [0 for i in range(n 1)] cnt 0 res [] for _ in range(m):u, v map(int, input().split())map_[u].append(v)map_[v].appen…

深度优先搜索(DFS)与广度优先搜索(BFS):探索图与树的算法

一、引言 在图论和树形结构中&#xff0c;搜索算法是寻找从起点到终点的路径的关键。其中&#xff0c;深度优先搜索&#xff08;DFS&#xff09;和广度优先搜索&#xff08;BFS&#xff09;是最常用且最基础的两种搜索算法。本文将详细介绍广度优先搜索&#xff08;BFS&#xf…

Python算法题集_二叉树的最大深度

Python算法题集_二叉树的最大深度 题104&#xff1a;二叉树的最大深度1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【DFS自顶向下】2) 改进版一【DFS自底向上】3) 改进版二【BFS】 4. 最优算法 本文为Python算法题集之一的代码示例 题104&am…

【寸铁的刷题笔记】图论、bfs、dfs

【寸铁的刷题笔记】图论、bfs、dfs 大家好 我是寸铁&#x1f44a; 金三银四&#xff0c;图论基础结合bfs、dfs是必考的知识点✨ 快跟着寸铁刷起来&#xff01;面试顺利上岸&#x1f44b; 喜欢的小伙伴可以点点关注 &#x1f49d; &#x1f31e;详见如下专栏&#x1f31e; &…

LeetCode_BFS_DFS_中等_1376.通知所有员工所需的时间

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 公司里有 n 名员工&#xff0c;每个员工的 ID 都是独一无二的&#xff0c;编号从 0 到 n - 1。公司的总负责人通过 headID 进行标识。 在 manager 数组中&#xff0c;每个员工都有一个直属负责人&#xff0c…

宽度优先搜索(BFS)之习题分析

宽度优先搜索&#xff08;BFS&#xff09;之习题分析一、宽度优先搜索的概念二、小岛问题&#xff08;一&#xff09;、题目需求&#xff08;二&#xff09;、解法&#xff08;三&#xff09;、代码分析三、单词接龙&#xff08;一&#xff09;、题目需求&#xff08;二&#x…

重温数据结构与算法之宽度优先搜索

文章目录前言一、实现1.1 核心步骤和复杂度1.2 伪码和java示例1.3 动图示例二、应用2.1 寻找最短路径2.2 拓扑排序2.3 最小生成树三、LeetCode 实战3.1二叉树的层序遍历3.2 找树左下角的值3.3单词接龙参考前言 广度优先搜索&#xff08;Breadth First Search&#xff0c;简称 …

[BFS模板题] 数组版/STL版 以及记录路线

目录 题目 ​ 用数组模拟队列 运用queue 拓展:记录路线 题目 输入样例&#xff1a; 5 5 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0输出样例&#xff1a; 8 用数组模拟队列 #include <iostream> #include <cstring> #include <algorithm> …

hdu 5961 传递 2016ACM/CCPC合肥赛区现场赛A

Problem Description我们称一个有向图G是传递的&#xff0c;当且仅当对任意三个不同的顶点a,,若G中有 一条边从a到b且有一条边从b到c ,则G中同样有一条边从a到c。我们称图G是一个竞赛图&#xff0c;当且仅当它是一个有向图且它的基图是完全图。换句 话说&#xff0c;将完全图每…

算法竞赛进阶指南---(A*)第k短路

题面 题解&#xff08;A*&#xff09; 对于第一次出队的为最短路&#xff0c;第K次出队的就是第K短路&#xff0c;我们采用反向建边&#xff0c;dijkstra预处理终点到每个点的距离&#xff0c;将每个点到终点的距离作为估计值 代码 #include<iostream> #include<cstd…

FloodFill

"绝境之中才窥见&#xff0c;Winner&#xff0c;Winner" FloodFill算法简介: floodfill又翻译成漫水填充。我们可以将下面的矩阵理解为一片具有一定高度的坡地&#xff0c;此时突发洪水&#xff0c;洪水会将高度<0的地方填满。 话句话来说&#xff0c;Fl…

2023-8-30 八数码(BFS)

题目链接&#xff1a;八数码 #include <iostream> #include <algorithm> #include <unordered_map> #include <queue>using namespace std;int bfs(string start) {string end "12345678x";queue<string> q;unordered_map<strin…

17. 数据结构之图

前言 前面介绍了队列&#xff0c;栈等线性数据结构&#xff0c;二叉树&#xff0c;AVL树等非线性数据结构&#xff0c;本节&#xff0c;我们介绍一种新的非线性数据结构&#xff1a;图。图这种结构有很广泛的应用&#xff0c;比如社交网络&#xff0c;电子地图&#xff0c;多对…

AcWing 188:武士风度的牛 ← BFS

【题目来源】https://www.acwing.com/problem/content/190/ 【题目描述】 农民 John 有很多牛&#xff0c;他想交易其中一头被 Don 称为 The Knight 的牛。 这头牛有一个独一无二的超能力&#xff0c;在农场里像 Knight 一样地跳&#xff08;就是我们熟悉的象棋中马的走法&…

【蓝桥】通关

1、题目 问题描述 游戏“蓝桥争霸”由很多关卡和副本组成&#xff0c;每一关可以抽象为一个节点&#xff0c;整个游戏的关卡可以抽象为一棵树形图&#xff0c;每一关会有一道算法题&#xff0c;只有当经验值不低于第 i i i 关的要求 k i k_i ki​ 时&#xff0c;小蓝才能挑…

洛谷P1256 显示图像

广搜练手题 题目链接 思路 打印每个数与其最近的 1 1 1的曼哈顿距离&#xff0c;显然广搜&#xff0c;存储每一个 1 1 1&#xff0c;针对每一个 1 1 1开始广搜&#xff0c;逐层更新&#xff0c;每轮后更新的为两轮之中的最小曼哈顿距离 ACcode #include<bits/stdc.h>…

DFS、BFS求解leetcode图像渲染问题(Java)

目录 leetcode733题.图像渲染 DFS BFS leetcode733题.图像渲染 733. 图像渲染 - 力扣&#xff08;LeetCode&#xff09; 有一幅以 m x n 的二维整数数组表示的图画 image &#xff0c;其中 image[i][j] 表示该图画的像素值大小。 你也被给予三个整数 sr , sc 和 newColor …

华容道问题求解_详细设计(四)之查找算法2_BFS

&#xff08;续上篇&#xff09; 利用BFS查找&#xff0c;会找到最短路径&#xff08;没有权重的图&#xff09;&#xff0c;这个道理比较简单&#xff0c;这是由于寻找路径的方法都是从起点或者接近起点的位置开始的。查找过程如果画出图来&#xff0c;类似于一圈圈的放大&…

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(一)

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(一) 大家好 我是寸铁&#x1f44a; 总结了一篇刷题关于树、dfs、bfs、回溯、递归的文章✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 105. 从前序与中序遍历序列构造二叉树 模拟分析图 代码实现 /*** Definition for a binary tre…

第六届蓝桥杯国赛JAVA语言B组第四题 穿越雷区 bfs 位运算

说一下我在时间复杂度上的优化&#xff0c;总共2点 不使用类&#xff0c;使用int代表x,y,正副三种状态从终点走到起点&#xff0c;而不是从起点走到终点 解释一下为什么不用类&#xff0c;因为不想用&#xff0c;所以不用。 一个int型的数的数值长度占了31位&#xff0c;我通…

Codeforces Round 929 (Div. 3)(A,B,C,D,E,F,G)

这场没考什么算法&#xff0c;比较水&#xff0c;难度也不是很高。比赛链接 硬要说的话E有个 前缀和 加 二分&#xff0c;F是数学BFS&#xff0c;G是个构造 A. Turtle Puzzle: Rearrange and Negate 题意&#xff1a; 给你一个由 n n n 个整数组成的数组 a a a 。您必须对…

leetcode_100(Same Tree)

一、题目大意&#xff1a; 判断两个二叉树是否相同&#xff0c;即是判断两个二叉树的结构和值是否相等。 二、分析&#xff1a; 对于二叉树的问题很多可以转换为遍历的问题。二叉树的遍历可以是深度优先&#xff0c;也可以是广度优先。深度优先又可以分为中根、先根、后根遍…

BFS4专题 迷宫最短路径(输出路径)

题目&#xff1a;样例&#xff1a; 输入 3 3 0 1 0 0 0 0 0 1 0 输出 1 1 2 1 2 2 2 3 3 3 思路&#xff1a; 这里刚开始看的时候会可能有点复杂了&#xff0c;因为是递归。 但是只要理解了含义&#xff0c;脑袋里模拟一下还是可以理解的。首先还是 之前那样 BFS 常规搜索 …

acwing 188 武士分度的牛(最短路模型)

题面 题解 从起点开始&#xff0c;步数为0&#xff0c;然后BFS能走到’日’的方向&#xff0c;更新距离即可 代码 #include<bits/stdc.h>using namespace std; typedef pair<int, int> PII; const int N 160;int n, m; char g[N][N]; PII q[N * N]; int dist[N][…

acwing 845 八数码 (最小步数模型)

题面 题解 我们可以将这个问题抽象成一个图。设原始状态为起点&#xff0c;结尾状态为终点&#xff0c;变化的状态为中间点&#xff0c;每次都可以将x位置与它相邻的四个方向交换&#xff08;4中状态&#xff0c;符合条件下&#xff09;&#xff0c;这四个方向的状态就是新的点…

蓝桥杯-卡片换位(BFS)

蓝桥杯-卡片换位 1、题目描述2、解题思路3、完整代码(AC)1、题目描述 你玩过华容道的游戏吗? 这是个类似的,但更简单的游戏。 看下面 3 x 2 的格子 +---+---+---+| A | * | * |+---+---+---+| B | | * |+---+---+---+在其中放 5 张牌,其中 A 代表关羽,B 代表张飞,* 代表士…

UOJ#80. 二分图最大权匹配(BFS)

从前一个和谐的班级&#xff0c;有 nl 个是男生&#xff0c;有 nr 个是女生。编号分别为 1,…,nl 和 1,…,nr。 有若干个这样的条件&#xff1a;第 v 个男生和第 u 个女生愿意结为配偶&#xff0c;且结为配偶后幸福程度为 ww。 请问这个班级里幸福程度之和最大是多少&#xf…

搜索-BFS 练习题 奇怪的电梯

奇怪的电梯 题目链接 题目描述 呵呵&#xff0c;有一天我做了一个梦&#xff0c;梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯&#xff0c;而且第 i i i 层楼&#xff08; 1 ≤ i ≤ N 1 \le i \le N 1≤i≤N&#xff09;上有一个数字 K i K_i Ki​&#xff08; 0…

数据结构与算法(四) 广度优先搜索

本篇文章继续来学习广度优先搜索算法&#xff08;Broad-First-Search&#xff0c;BFS&#xff09; 1、本质 广度优先搜索本质上还是遍历整个搜索空间&#xff0c;找到给定问题的解 实际上也是一种暴力搜索算法&#xff0c;不过其中的实现细节和优化细节还是值得探讨的 与深度…

295.【华为OD机试】智能驾驶( 广度优先搜索(BFS)JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目二.解题思路三.题解代码Python题解代码JAVA题解…

八数码题解

179. 八数码 - AcWing题库 首先要明确八数码问题的小结论&#xff0c;当原始序列中逆序对数列为奇数时一定无解&#xff0c;反之一定有解。 解法一&#xff1a;BFSA* 首先思考用纯BFS解决这个问题。 大致的框架就是&#xff1a; 队列q&#xff0c;状态数组dist&#xff0c;…

Leetcode.2583 二叉树中的第 K 大层和

题目链接 Leetcode.2583 二叉树中的第 K 大层和 Rating &#xff1a; 1374 题目描述 给你一棵二叉树的根节点 root和一个正整数 k 。 树中的 层和 是指 同一层 上节点值的总和。 返回树中第 k 大的层和&#xff08;不一定不同&#xff09;。如果树少于 k 层&#xff0c;则返…

【图】:常用图搜索(图遍历)算法

目录 概念图遍历深度优先搜索 (DFS)DFS 适用场景DFS 优缺点 广度优先搜索 (BFS)BFS 适用场景BFS 优缺点 DFS & BFS 异同点 图搜索Dijkstra算法A*算法Floyd算法Bellman-Ford算法SPFA算法 概念 图遍历和图搜索是解决图论问题时常用的两种基本操作。 图遍历是指从图中的某一个…

宽度优先搜索算法(BFS)详解(超级详细讲解,附有大图)

目录 一.宽度优先搜索&#xff08;BFS&#xff09;是什么&#xff1f; 二.图解宽搜&#xff08;BFS&#xff09; 三.对比与发现 四。工具——队列 五.模板 六.最后 一.宽度优先搜索&#xff08;BFS&#xff09;是什么&#xff1f; 百度百科这样说&#xff1a; 宽度优先搜索…

Offer必备算法20_队列_宽搜bfs_四道力扣题详解(由易到难)

目录 ①力扣429. N 叉树的层序遍历 解析代码 ②力扣103. 二叉树的锯齿形层序遍历 解析代码 ③力扣662. 二叉树最大宽度 解析代码 ④力扣515. 在每个树行中找最大值 解析代码 本篇完。 ①力扣429. N 叉树的层序遍历 429. N 叉树的层序遍历 难度 中等 给定一个 N 叉树…

特定深度节点链表

题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 经典BFS与简单链表结合的题目。 #define MAX_DEPTH (1000)struct ListNode** listOfDepth(struct TreeNode* tree, int* returnSize) {*returnSize 0;struct ListNode **ans (…

罗勇军 →《算法竞赛·快冲300题》每日一题:“超级骑士” ← DFS

【题目来源】http://oj.ecustacm.cn/problem.php?id1810http://oj.ecustacm.cn/viewnews.php?id1023https://www.acwing.com/problem/content/3887/【题目描述】 现在在一个无限大的平面上&#xff0c;给你一个超级骑士。 超级骑士有N种走法&#xff0c;请问这个超级骑士能否…

迷宫寻路[天梯赛 -- 栈]

文章目录 题目描述思路AC代码 题目描述 输入样例 8 8 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 4 4 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 -1 -1输出样例 1,1 2,1 3,1 4,1 5,1 5,2 5…

图的学习,深度和广度遍历

一、什么是图 表示“多对多”的关系 包括&#xff1a; 一组顶点&#xff1a;通常用V&#xff08;Vertex&#xff09;表示顶点集合一组边&#xff1a;通常用E&#xff08;Edge&#xff09;表示边的集合 边是顶点对&#xff1a;(v, w)∈E&#xff0c;其中v,w∈V有向边<v, w&…

(C/C++)-图的深度优先遍历(DFS)和广度优先遍历(BFS)

(C/C)-图的深度优先遍历(DFS)和广度优先遍历(BFS) 1、图的深度优先遍历(DFS) 图的深度优先遍历与树的先序遍历类似&#xff0c;即尽可能深的遍历图 这里采取邻接矩阵存储图&#xff0c;存储的图如下&#xff1a; ps: 这个图沿用我的上一篇文章(最小生成树和单源最短路径)&a…

UVA 11624 BFS + 技巧

题目大意&#xff1a;在迷宫内&#xff0c;J表示人&#xff0c;F表示火&#xff0c;火可能不止一处&#xff0c;但是人只有一个&#xff0c;火会向上下左右蔓延&#xff0c;蔓延速度和人移动速度一至&#xff08;每次一格&#xff0c;但是可以同时向四个方向&#xff09;问是否…

leetcode [690]员工的重要性(BFS或DFS搜索,打工人五一快乐~)

# 给定一个保存员工信息的数据结构&#xff0c;它包含了员工 唯一的 id &#xff0c;重要度 和 直系下属的 id 。 # # 比如&#xff0c;员工 1 是员工 2 的领导&#xff0c;员工 2 是员工 3 的领导。他们相应的重要度为 15 , 10 , 5 。那么员工 1 的数据结构是 [1, 15, # […

PAT甲级真题 1091 Acute Stroke (30分) C++实现(bfs累计节点数,dfs会栈溢出)

题目 One important factor to identify acute stroke (急性脑卒中) is the volume of the stroke core. Given the results of image analysis in which the core regions are identified in each MRI slice, your job is to calculate the volume of the stroke core. Input …

蓝桥杯系列 - 2018国赛 - 迷宫与陷阱

BFS题&#xff0c;大致遵循以下思路&#xff1a; 可以设置一个结构体&#xff0c;包含 4 个成员: x, y, step, state。其中 x, y 表示当前处在迷宫中的位置&#xff0c;step 表示到达该位置时总共用了多少步&#xff0c;state 表示无敌状态剩余的步数&#xff0c;state 0 表示…

HDU1242,Rescue(BFS)

一开始还没学BFS&#xff0c;前几次都是用DFS&#xff0c;但很明显&#xff0c;这样做会TLE&#xff0c;于是后来学了BFS之后&#xff0c;改用BFS&#xff0c;就AC了。 代码如下&#xff1a; #include<cstdio> #include<algorithm> #include<iostream> #inc…

【优选算法专栏】专题十八:BFS解决拓扑排序(一)

本专栏内容为&#xff1a;算法学习专栏&#xff0c;分为优选算法专栏&#xff0c;贪心算法专栏&#xff0c;动态规划专栏以及递归&#xff0c;搜索与回溯算法专栏四部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握算法。 &#x1f493;博主csdn个人主页&#xff1a;小…

POJ3026,Borg Maze(BFS+最小生成树)

第一次接触BFS居然是和最小生成树结合在一起的。 一开始是用DFS求各个A及S之间的最短路径&#xff0c;严重超时。。。网上求助大佬后才知道要用BFS&#xff0c;结果超快&#xff01; 代码如下&#xff1a; #include<cstdio> #include<iostream> #include<algor…

C++解题报告:详解经典搜索难题——八数码问题( 双向BFS A* 求解)

引言 AC这道八数码问题&#xff0c;你和楼教主就是兄弟了。。。 题目描述 在一个3*3的九宫格棋盘里&#xff0c;放有8个数码&#xff0c;数码的数字分别是1~8。棋盘中还有一个位置是空着的&#xff0c;用0表示。可以通过在九宫格里平移数码来改变状态(即空格位在九宫格内能上下…

L3-3 寻宝路线

题目来源&#xff1a;天梯赛训练题 在一个m行n列方格矩阵中&#xff0c;每一个方格内摆放着价值不等的宝贝&#xff08;价值可正可负&#xff09;&#xff0c;让小明感到好奇的是&#xff0c;从左上角到达右下角的所有可能路线中&#xff0c;能捡到宝贝的价值总和最大是多少&a…

872. 叶子相似的树

2021-05-10 LeetCode每日一题 链接&#xff1a;https://leetcode-cn.com/problems/leaf-similar-trees/ 题目 请考虑一棵二叉树上所有的叶子&#xff0c;这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。 举个例子&#xff0c;如上图所示&#xff0c;给定一棵叶值序列为…

Java每日一练(20230429)

目录 1. 二叉树的后序遍历 &#x1f31f;&#x1f31f; 2. 删除无效的括号 &#x1f31f;&#x1f31f;&#x1f31f; 3. 合并两个有序链表 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每…

牛客小白月赛75 D矩阵

这题的边权有1&#xff0c;2所以不能用0&#xff0c;1bfs&#xff0c;虽然我也不是很会用 这题是可以说是个分层图 我们要利用小根堆进行排序&#xff0c;让边权小的排在前面&#xff0c; 实现小根堆有两种方式&#xff1a; 第一种是比较巧妙的&#xff0c;因为优先队列默认…

算法-遍历二叉树-层序 BFS

一.算法要求 给定一棵二叉树&#xff0c;使用层序遍历二叉树 二.二叉树遍历 层序遍历又称作BFS即广度优先遍历&#xff0c;算法要求逐层遍历二叉树节点。 1.给定二叉树 CSDN-BITDDD2.定义二叉树并生成 class BinaryTree(object):# 初始化def __init__(self, dataNone, left…

279. 完全平方数

2021-06-11 LeetCode每日一题 链接&#xff1a;https://leetcode-cn.com/problems/perfect-squares/ 标签&#xff1a;广度优先搜索、数学、动态规划、完全背包问题 题目 给定正整数 n&#xff0c;找到若干个完全平方数&#xff08;比如 1, 4, 9, 16, …&#xff09;使得它们…

993. 二叉树的堂兄弟节点

2021-05-17 LeetCode每日一题 链接&#xff1a;https://leetcode-cn.com/problems/cousins-in-binary-tree/ 标签&#xff1a;树、深度优先搜索、广度优先搜索。 题目 在二叉树中&#xff0c;根节点位于深度 0 处&#xff0c;每个深度为 k 的节点的子节点位于深度 k1 处。 如…

690. 员工的重要性

2021-05-01 LeetCode 每日一题 链接&#xff1a;https://leetcode-cn.com/problems/employee-importance/ 这里可以使用BFS/DFS去解题。因为我递归用的不怎么熟悉&#xff0c;所以选择用递推的方式。 因为题目提供的是员工的id&#xff0c;而我们需要计算员工的重要性&#…

HDU-1026 Ignatius and the Princess I (BFS)

题目&#xff1a;HDU-1026 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1026 题目&#xff1a; Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 15647 Acce…

AcWing算法提高课-2.1.1池塘计数

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 题目传送门点这里 题目描述 农夫约翰有一片 N∗M 的矩形土地。 最近&#xff0c;由于降雨的原因&#xff0c;部分土地被水淹没了。 现在用一个字符矩阵来表示他的土地。 每个单元格内&…

迷宫的最短路径【BFS】

迷宫的最短路径时间限制&#xff1a;1000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;3描述:给定一个大小为N * M 的迷宫。迷宫由通道和墙壁组成&#xff0c;每一步可以向邻接的上下左右四格的通道移动。请求出从起点到终点所需的最小步数。请注意&#xff0c;本题假定…

POJ 2688 BFS+TSP 问题

题目大意&#xff1a;给定一张图&#xff0c;包括 . * o x ,分别为可行点&#xff0c;目标&#xff08;可能不止一个&#xff09;&#xff0c;墙&#xff1b;目标&#xff1a;以最短的距离遍历这个图上的所有 * &#xff0c;机器人可以直接清理垃圾无需时间&#xff1b…

华为机试2022.4.6:服务启动

200分的题目。 服务启动 题目描述&#xff1a; 有若干个连续编号的服务&#xff08;编号从0开始&#xff09;&#xff0c;服务间有依赖关系&#xff0c;启动一个指定服务&#xff0c;请判断该服务是否可以成功启动&#xff0c;并输出以来的前置服务编号&#xff08;依赖关系…

蓝桥杯·3月份刷题集训Day06

本篇博客旨在记录自已打卡蓝桥杯3月份刷题集训&#xff0c;同时会有自己的思路及代码解答希望可以给小伙伴一些帮助。本人也是算法小白&#xff0c;水平有限&#xff0c;如果文章中有什么错误之处&#xff0c;希望小伙伴们可以在评论区指出来&#xff0c;共勉&#x1f4aa;。 文…

力扣二叉树专题(三)-N叉树的前序、后序遍历 翻转二叉树 前中后序遍历 DFS BFS 递归法 迭代法 多种方法C++实现 总结

文章目录一、N叉树的前序遍历与后序遍历1. n叉树的前序遍历-题5892. n叉树的后序遍历-题590二、翻转二叉树-题226力扣二叉树专题&#xff08;一&#xff09;介绍了二叉树的深度优先遍历&#xff0c;前中后序的递归、迭代、统一迭代实现。 力扣二叉树专题&#xff08;二&#x…

力扣二叉树专题(五)- 左叶子之和、找树左下角的值、路径总和、从中序与后序遍历序列构造二叉树、从前序与中序遍历序列构造二叉树、最大二叉树 C++实现 总结

文章目录 一、404.左叶子之和二、513. 找树左下角的值三、112. 路径总和四、106.从中序与后序遍历序列构造二叉树五、相关题-105.从前序与中序遍历序列构造二叉树六、654.最大二叉树总结 一、404.左叶子之和 注意点&#xff1a; 是左叶子&#xff0c;不是左节点&#xff01;&…

Python每日一练(20230505) 课程表 Course Schedule III/IV

目录 3. 课程表 Course Schedule III 4. 课程表 Course Schedule IV &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 3. 课程表 Course Schedule III 这里有 n 门不同的在线课程&#xff…

LeetCode_多源 BFS_中等_994.腐烂的橘子

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 在给定的 m x n 网格 grid 中&#xff0c;每个单元格可以有以下三个值之一&#xff1a; 值 0 代表空单元格&#xff1b;值 1 代表新鲜橘子&#xff1b;值 2 代表腐烂的橘子。 每分钟&#xff0c;腐烂的橘子周…

0-1BFS 双端队列 广度优先搜索

一. BFS及0-1BFS的简单介绍 深度优先搜索DFS和广度优先搜索BFS是经常使用的搜索算法&#xff0c;在各类题目中都有广泛的应用。 深度优先搜索算法&#xff08;英语&#xff1a;Depth-First-Search&#xff0c;DFS&#xff09;是一种用于遍历或搜索树或图的算法。其过程简要来说…

BFS(广度优先搜索)

BFS&#xff08;Breadth first search&#xff09; 适用范围&#xff1a;找到一条最快到达目标状态的路径。 算法过程&#xff1a;将当前搜索到的状态A的每一个子状态压入队列&#xff0c;检查队列是否为空&#xff0c;如果不为空&#xff0c;弹出队首元素&#xff0c;并且以…

leetcode357- 2812. 找出最安全路径

这个题比较经典&#xff0c;可以用多个算法来求解&#xff0c;分别给出各个算法的求解方法&#xff0c;主要是分为第一部分的多源BFS求每个位置的距离和第二部分求(0,0)到(n-1,n-1)的最短路径&#xff08;可以用多种方法求&#xff09; 目录 多源BFS求最短路径枚举安全系数判断…

LeetCode_二叉树_BFS_中等_199.二叉树的右视图

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 给定一个二叉树的 根节点 root&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 示例 1&#xff1a; 输入: [1,2,3,null,5,null,4] 输出: [1,…

树与图的深度优先遍历、宽度优先遍历算法总结

知识概览 树是特殊的图&#xff0c;是无环连通图图分为有向图和无向图。因为无向图可以转化为有向图&#xff0c;树可以转化为图。因此本文讨论有向图。 树和图的存储&#xff1a; 邻接矩阵&#xff1a;空间复杂度&#xff0c;适合存储稠密图。邻接表&#xff1a;存储每个点可以…

蓝桥杯——一篇搞懂广度优先搜索(BFS)

大家好&#xff0c;我是璐画 &#x1f4d2;博客主页&#xff1a;璐画的个人主页 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4cc;本文由璐画原创&#xff0c;CSDN首发&#xff01; &#x1f4c6;首发时间&#xff1a;&#x1f33…

2023-8-29 有向图的拓扑排序

题目链接&#xff1a;有向图的拓扑排序 #include <cstring> #include <iostream> #include <algorithm>using namespace std;const int N 100010;int n, m; int h[N], e[N], ne[N], idx;int q[N], d[N];void add(int a, int b) {e[idx] b, ne[idx] h[a]…

AcWing 1101:献给阿尔吉侬的花束 ← BFS

【题目来源】https://www.acwing.com/problem/content/1103/【题目描述】 阿尔吉侬是一只聪明又慵懒的小白鼠&#xff0c;它最擅长的就是走各种各样的迷宫。 今天它要挑战一个非常大的迷宫&#xff0c;研究员们为了鼓励阿尔吉侬尽快到达终点&#xff0c;就在终点放了一块阿尔吉…

AcWing 844. 走迷宫 (每日一题)

给定一个 nm 的二维整数数组&#xff0c;用来表示一个迷宫&#xff0c;数组中只包含 0 或 1&#xff0c;其中 0 表示可以走的路&#xff0c;1表示不可通过的墙壁。 最初&#xff0c;有一个人位于左上角 (1,1)处&#xff0c;已知该人每次可以向上、下、左、右任意一个方向移动一…

23.8.18 牛客暑期多校10部分题解

L - Grayscale Confusion 题目大意 有 n n n 个三元组 { r i , g i , b i } \{r_i,\space g_i,\space b_i\} {ri​, gi​, bi​}&#xff0c;需要构造一个数组 w i w_i wi​ 使得 w 1 w 2 w_1w_2 w1​w2​ 并且对于 ∀ i , j \forall i,\space j ∀i, j 满足如果 r i &…

LeetCode_BFS_DFS_中等_841.钥匙和房间

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 有 n 个房间&#xff0c;房间按从 0 到 n - 1 编号。最初&#xff0c;除 0 号房间外的其余所有房间都被锁住。你的目标是进入所有的房间。然而&#xff0c;你不能在没有获得钥匙的时候进入锁住的房间。 当你…

深度优先搜索(BFS)的原理和C++实现

时间复杂度 O(m) ,m是边的数量。许多经典应用场景&#xff0c;如2D游戏地图、网格&#xff0c;出边固定不超过4或8(4联通或8联通&#xff09;&#xff0c;这种情况也可以说BFS的时间复杂度是O(n)&#xff0c;n是端点数。 每个端点只会访问一次&#xff0c;显然第一次访问的是最…

Golang每日一练(leetDay0079) 最大正方形、完全二叉树节点数

目录 221. 最大正方形 Maximal Square &#x1f31f;&#x1f31f; 222. 完全二叉树的节点个数 Count Complete Tree Nodes &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/…

LeetCode 2258. 逃离火灾:BFS

【LetMeFly】2258.逃离火灾 力扣题目链接&#xff1a;https://leetcode.cn/problems/escape-the-spreading-fire/ 给你一个下标从 0 开始大小为 m x n 的二维整数数组 grid &#xff0c;它表示一个网格图。每个格子为下面 3 个值之一&#xff1a; 0 表示草地。1 表示着火的格…

蓝桥杯:七步诗 ← bfs

【题目来源】https://www.lanqiao.cn/problems/3447/learning/【题目描述】 煮豆燃豆苴&#xff0c;豆在釜中泣。本是同根生&#xff0c;相煎何太急?---曹植 所以&#xff0c;这道题目关乎豆子! 话说赤壁之战结束后&#xff0c;曹操的船舰被刘备烧了&#xff0c;引领军队从华容…

【算法】最短路计数(计算最短路的数量)

题目 给出一个 N 个顶点 M 条边的无向无权图&#xff0c;顶点编号为 1 到 N。 问从顶点 1 开始&#xff0c;到其他每个点的最短路有几条。 输入格式 第一行包含 2 个正整数 N,M&#xff0c;为图的顶点数与边数。 接下来 M 行&#xff0c;每行两个正整数 x,y&#xff0c;表示有…

力扣第695题 岛屿的最大面积 C++ DFS BFS 附Java代码

题目 695. 岛屿的最大面积 中等 相关标签 深度优先搜索 广度优先搜索 并查集 数组 矩阵 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相邻的 1 (代表土地) 构成的组合&#xff0c;这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你…

数据结构——图的概念,图的存储结构,图的遍历(dfs,bfs)

目录 1.图的定义和术语 2.案例引入 1.六度空间理论 3.图的类型定义 4.图的存储结构 1.邻接矩阵 1.无向图的邻接矩阵表示法 2.有向图的邻接矩阵表示法 3.网&#xff08;有权图&#xff09;的邻接矩阵表示法 代码示例&#xff1a; 2.采用邻接矩阵表示法创建无向图…

AtCoder ABC周赛2023 12/10 (Sun) D题题解

目录 原题截图&#xff1a; 题目大意&#xff1a; 主要思路&#xff1a; 注&#xff1a; 代码&#xff1a; 原题截图&#xff1a; 题目大意&#xff1a; 给定两个 的矩阵 和 。 你每次可以交换矩阵 的相邻两行中的所有元素或是交换两列中的所有元素。 请问要使 变换至…

poj 1729 Jack and Jill (比较有特色的bfs)

Description Ever since the incident on the hill, Jack and Jill dislike each other and wish to remain as distant as possible. Jack and Jill must attend school each day; Jack attends a boys’ school while Jill attends a girls’ school. Both schools start at…

道路拆除的题解

目录 原题描述&#xff1a; 题目描述 输入格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 样例 #2 样例输入 #2 样例输出 #2 提示 题目大意&#xff1a; 主要思路&#xff1a; 至于dis怎么求&#xff1f; 代码code&#xff1a; 原题描述&#xff1a; 题目描述 …

移动机器人规划 - 基于搜索的路径规划算法

本文旨在对高飞老师移动机器人规划课程做学习记录&#xff0c;方便日后回顾。 &#xff08;1&#xff09;图搜索基础 &#xff08;2&#xff09;Dijstra和A*算法 &#xff08;3&#xff09;JPS &#xff08;4&#xff09;作业 1 图搜索基础 1.1 配置空间&#xff08;Configur…

迷宫(蓝桥杯)——DFS和BFS

迷宫 题目描述 下图给出了一个迷宫的平面图&#xff0c;其中标记为 1 的为障碍&#xff0c;标记为 0 的为可以通行的地方。 010000 000100 001001 110000迷宫的入口为左上角&#xff0c;出口为右下角&#xff0c;在迷宫中&#xff0c;只能从一个位置走到这 个它的上、下、左…

AcWing 4520:质数 ← BFS

【题目来源】https://www.acwing.com/problem/content/4523/【题目描述】 给定一个正整数 X&#xff0c;请你在 X 后面添加若干位数字&#xff08;至少添加一位数字&#xff1b;添加的数不能有前导0&#xff09;&#xff0c;使得结果为质数&#xff0c;在这个前提下所得的结果应…

图的遍历方法——DFS和BFS

DFS类似于树的先序遍历&#xff0c;因此可以用递归实现&#xff1b; BFS类似于树的层次遍历&#xff0c;因此可以用队列实现。 说明&#xff1a;下面代码中图的存储方式是邻接表。关于邻接表和邻接矩阵可看邻接表和邻接矩阵 1.深度优先遍历&#xff08; Depth First Searc…

【Java代码】DFS,BFS,并查集,二分法总结

最近没有更新博客&#xff0c;因为博主大部分的时间都在准备算法&#xff0c;备战蓝桥杯&#xff0c;学的比较琐碎&#xff0c;所以也不太好写博客总结。 经过一段时间的学习&#xff0c;总结一下自己这段时间的算法学习吧&#xff01; DFS 什么是DFS呢&#xff1f; DFS就是深…

【蓝桥杯集训11】BFS(4 / 4)

目录 844. 走迷宫 - BFS求最短路 1233. 全球变暖 - BFS 845. 八数码 - 最短路BFS 状态表示 一二维坐标转换 为什么BFS保证走的是最短路&#xff1f; 一二维坐标转换&#xff08;nn矩阵&#xff09; 1562.微博转发 - BFS按层遍历 有向图 844. 走迷宫 - BFS求最短路 活…