倍数bfs

[LeetCode] 1363. Largest Multiple of Three 形成三的最大倍数

Given an array of digits digits, return the largest multiple of three that can be formed by concatenating some of the given digits in any order. If th ......
倍数 LeetCode Multiple Largest Three

搜索学习笔记+杂题 (基础一 简单的dfs+bfs)

搜索杂题: 一、基础的BFS与DFS: 深搜和广搜都可以遍历出在一定限制下可能出现的所有情况,但是朴素的搜索一般复杂度极高,成指数级别,需要用到各种五花八门的优化方式,后面会一一介绍,但基础很重要,几乎不用考虑优化,直接模拟题意就可以了。这篇博文讲的是习题ing。 深搜一般处理有分支的情况,广搜一般 ......
基础 笔记 dfs bfs

lc -- 第 121 场双周赛(bfs, 数位dp, python3, go)

简单模拟 class Solution: def missingInteger(self, nums: List[int]) -> int: res = nums[0] for i in range(1, len(nums)): if nums[i] == nums[i - 1] + 1: res ......
数位 python3 python 121 bfs

深度优先搜索(DFS)和广度优先搜索(BFS)

深度优先搜索(DFS)和广度优先搜索(BFS),都是图形搜索算法,相似又却不同,在应用上也被用到不同的地方。 一、深度优先搜索(DFS) 深度优先搜索属于图算法的一种,是一个针对图和树的遍历算法,英文缩写为DFS即Depth First Search。深度优先搜索是图论中的经典算法,利用深度优先搜索 ......
广度 深度 DFS BFS

BFS-走迷宫

1. 题目 简单概述:走迷宫问题,行走的方向是上下左右。这个迷宫内有些格子不能走,想要从迷宫的左上角走到右下角,最少移动次数。这道题属于最短路问题(求出到达一个点的最短路径)。 思路分析 为什么使用BFS求到的答案能保证是最短的路径? 因为BFS是逐层搜索的,能把当前层的所有可能值包括进来,每一层的 ......
迷宫 BFS

图(树)的广度优先遍历bfs

图的广度优先遍历 广度优先遍历,就是在遍历时优先考虑遍历的广度,不像深度优先那样一条路径遍历到底,而是一层一层的遍历。 由于广度优先是一层一层节点的遍历,在图的边权值都为1的情况下,若我们要求出节点a到节点b的最短路,就可以以a为源点(source)进行广搜,当a第一次搜到b时,其路径一定最短。因为 ......
广度 bfs

BFS模板

#class Solution: # def BFS(self, start, target): # q = [] # 用一个列表做队列 # v = [] # 记录走过的路 # q.append(start) # 把起点放入队列 # v.append(start) #加入走过的路 # step = ......
模板 BFS

1346. 检查整数及其两倍数是否存在

1346. 检查整数及其两倍数是否存在 给你一个整数数组 arr,请你检查是否存在两个整数 N 和 M,满足 N 是 M 的两倍(即,N = 2 * M)。 更正式地,检查是否存在两个下标 i 和 j 满足: i != j 0 <= i, j < arr.length arr[i] == 2 * a ......
倍数 整数 1346

2023秋季专题训练四(BFS2)

问题 D: 迷宫 注意行列的坑点即可,可以多开一维来判断方向 优先枚举转向少的,因为转向越少越可能达到 点击查看代码 int vis[110][110][5];//第三表示方向 0向上 1向右 2向下 3向左 char st[110][110];//存图,注意坑点:行列反过来 struct node ......
专题 2023 BFS2 BFS

广度优先搜索(BFS)

一、广搜介绍 广度优先搜索是一种暴力算法,通过遍历一整张图来找寻结果。一般是使用队列来实现 1.原理 首先我们将根节点加入队列,然后遍历这个节点的全部方向,如果有满足条件的节点出现,就将其加入队列。 在全部方向遍历完之后,我们将遍历的节点出队列。然后接着重复上述的操作,直到队列为空,也就代表着图遍历 ......
广度 BFS

调和级数枚举倍数模型

调和级数枚举倍数模型 参考博客: 算法学习笔记27:素数筛法【埃氏筛法、线性筛法】 OI&ACM]调和级数枚举倍数模型 板子(时间复杂度\(O(nlogn)\)): for(int i = 1;i<=n;i++) { for(int j = i;j<=n;j += i) { ??? } } 应用: ......
级数 倍数 模型

AcWing 920. 最优乘车 (抽象建图 + bfs

package 算法提高课; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class acw920 { /** * 本题的 ......
AcWing 920 bfs

CSP-J 2023 T4 旅游巴士(CSP-J考纲范围内的解法:BFS+二分)

原题连接:https://www.luogu.com.cn/problem/P9751 题意解读: 给定n个点,m条边的有向带权图(权重为能通过该条边的最小时间),求从起点1到终点n的最短距离,由于出发和达到时间都需为k的倍数,所以这个最短距离也必须是k的倍数。限制条件:每通过一条路径,时长比上一个 ......
解法 CSP-J CSP 范围 2023

NOJ 八数码问题(bfs加hash)

描述 在九宫格里放在1到8共8个数字还有一个是空格,与空格相邻的数字可以移动到空格的位置,问给定的状态最少需要几步能到达目标状态(用0表示空格): 1 2 3 4 5 6 7 8 0 输入 输入一个给定的状态。 输出 输出到达目标状态的最小步数。不能到达时输出-1。 输入样例 1 2 3 4 0 6 ......
数码 问题 hash NOJ bfs

01bfs

今天写一个最短路题边权为 \(0\) 或 \(1\),我说这不一眼 \(dij\) 么?结果题解区全部写的 \(O(n+m)\) 的 \(01bfs\) 。 好家伙我居然一直不知道这么个东西,花了一个小时看会了,写一下原理。 实现的方法很简单,就是一个双端队列,去 \(nm\) 的 \(deque\ ......
bfs 01

bfs入门p1443一点心得

这题思路很简单,也是bfs通常的思路。即在每一轮枚举所有可能出现的情况,将其入队,然后弹出队首。当队列为空时结束搜索。 有以下几点体会: 1.入队的条件尽量多。不然容易死循环,一开始没有加上bfs[a.x][a.y] 1这个条件,导致已经被搜索到的点重复入队陷入死循环; 2.第一次走到的点标记为1, ......
点心 p1443 1443 bfs

DFS和BFS

DFS : acwing 842 递归搜索树 1 #include<iostream> 2 using namespace std; 3 4 const int N = 10; 5 int n; 6 int path[N]; 7 bool st[N]; 8 9 void dfs(int u) 10 ......
DFS BFS

BFS

鸣人与佐助 佐助被大蛇丸诱骗走了,鸣人在多少时间内能追上他呢? 已知一张地图(以二维矩阵的形式表示)以及佐助和鸣人的位置。地图上的每个位置都可以走到,只不过有些位置上有大蛇丸的手下,需要先打败大蛇丸的手下才能到这些位置。 鸣人有一定数量的查克拉,每一个单位的查克拉可以打败一个大蛇丸的手下。假设鸣人可 ......
BFS

DFS、BFS模板

目录DFSBFS DFS 处理当前节点的位置不同对应着不同的遍历 def preorderTraversal(root): if not root: return print(root.val) #前序遍历,处理当前节点 preorderTraversal(root.left) # 递归遍历左子树 ......
模板 DFS BFS

迭代加深,双向搜索,IDA*,A*,双端队列BFS

迭代加深: //迭代加深搜索 //给搜索设定一个范围,如果在这个范围内没有答案那么再加大搜索范围 //这么做是为了防止搜索过深,导致利用大量时间搜索无用信息 //如果当前搜索是第10位,搜索的是个二叉树,那么前9个就是2^0+2^1+2^2+..+2^9=2^10-1,所以时间复杂度并没增大太多 / ......
队列 双向 IDA BFS

字符串、线性表、队列、栈、哈希表、dfs、bfs

题目列表: 1. 字符串 无重复字符的最长子串 (中等难度) 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 AC代码,展开查看 class Solution { public: int lengthOfLongestSubstring(string s) { int res ......
队列 字符串 线性 字符 dfs

数据结构与算法 | 深搜(DFS)与广搜(BFS)

在查找二叉树某个节点时,如果把二叉树所有节点理理解为解空间,待找到那个节点理解为满足特定条件的解,对此解答可以抽象描述为: _在解空间中搜索满足特定条件的解_,这其实就是搜索算法(Search)的一种描述。当然也有其他描述,比如是“指一类用于在数据集合中查找特定项或解决问题的算法”,又或者是“指通过... ......
数据结构 算法 结构 数据 DFS

【每日例题】蓝桥杯 c++ 奇数倍数

奇数倍数 题目 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。请你找到最小的整数X同时满足:1.X是2019的整倍数;2.X的每—位数字都是奇数。运行限制·最大运行时间:1s·最大运行内存:128M 蓝桥杯 奇数倍数 题目分析 针对这个题目,要判断两个条件: 1.这个数是不 ......
奇数 蓝桥 例题 倍数

2652. 倍数求和

1.题目介绍 2.题解 2.1 枚举 思路 直接从[1,n]进行一次遍历,判断出能被整除的数便加到一个变量result中 代码 class Solution { public: int sumOfMultiples(int n) { int result = 0; for (int i = 1; i ......
倍数 2652

算法修养--广度优先搜索BFS

广度优先算法(BFS) 广度优先算法(Breadth-First Search)是在图和树领域的搜索方法,其核心思想是从一个起始点开始,访问其所有的临近节点,然后再按照相同的方式访问这些临近节点的节点,这种访问方式类似涟漪泛起,一层一层的扩散。 广度优先算法解决的问题: 从A点出发,有没有一条路径可 ......
广度 算法 修养 BFS

0-1 bfs

问题引入 对于边权为 0/1 的图 \(G=(V,E)\),求解其最短路。(注意这里的 1 并不一定就是 1,只是反映有无权值) ps. 一下称该类图为 0-1 图。 求解 一般图一般有 Dijkstra 和 SPFA。 但对于 0-1 图这样特殊的图,\(O(m\log m)\) 的 Dijkst ......
bfs

[USACO08FEB]meteor Shower S题解(bfs)

题目描述 贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。 如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。 根据预报,一共有 \(M\) ......
题解 Shower meteor USACO FEB

JAVA图搜索算法之DFS-BFS

图算法DFS与BFS BFS和DFS代表对图进行遍历,即搜索的算法,搜索算法中常用的只要有两种算法:深度优先遍历(Depth-First-Search : DFS)和广度优先遍历(Breadth-First-Search : BFS)。一个图结构可以用来表示大量现实生活中的问题,比如,道路网络,计算 ......
算法 DFS-BFS JAVA DFS BFS

DFS 与 BFS

简介 状态:解决问题所关注的属性的集合。 转移:状态之间的变化过程。 搜索:处理状态转移、寻找新状态、枚举(遍历)所有状态的一种算法思想。 搜索树:状态和有效转移形成的树形结构,每个状态只会被扩展一次。 深度优先搜索 全称为 Depth-First Search,简称 DFS、深搜。 这个算法一般采 ......
DFS BFS

dfs 与 bfs

$$dfs$$ 深度优先搜索,全称 Depth First Search,通常有两种意义:递归暴力枚举每种情况、图论中用于遍历或搜索图的算法。 搜索:递归暴力枚举每种情况 OI-wiki Link 没有什么好说的,经常用于打暴力,像 xhr 神仙就可以用它打出 HN 2023 小学组 S 1=。 洛 ......
dfs bfs
共120篇  :1/4页 首页上一页1下一页尾页