BFS 解决拓扑排序

例题一


解法:
算法思路:
原问题可以转换成⼀个拓扑排序问题。⽤ BFS 解决拓扑排序即可。
拓扑排序流程:
a. 将所有⼊度为 0 的点加⼊到队列中;
b. 当队列不空的时候,⼀直循环:
i. 取出队头元素;
ii. 将于队头元素相连的顶点的⼊度 - 1;
iii. 然后判断是否减成 0,。如果减成 0,就加⼊到队列中。

例题二


解法:
算法思路:
和上⼀题⼀样~

例题三


解法:
算法思路:
将题意搞清楚之后,这道题就变成了判断有向图时候有环,可以⽤拓扑排序解决。
如何搜集信息(如何建图):
a. 两层 for 循环枚举出所有的两个字符串的组合;
b. 然后利⽤指针,根据字典序规则找出信息。

相关推荐
weixin_4588726112 小时前
东华复试OJ二刷复盘2
算法
Charlie_lll12 小时前
力扣解题-637. 二叉树的层平均值
算法·leetcode
爱淋雨的男人12 小时前
自动驾驶感知相关算法
人工智能·算法·自动驾驶
乌萨奇也要立志学C++12 小时前
【洛谷】图论入门:从基本概念到代码实现(邻接矩阵、邻接表、DFS/BFS)
深度优先·图论·宽度优先
wen__xvn13 小时前
模拟题刷题3
java·数据结构·算法
滴滴答滴答答13 小时前
机考刷题之 6 LeetCode 169 多数元素
算法·leetcode·职场和发展
Neteen13 小时前
【数据结构-思维导图】第二章:线性表
数据结构·c++·算法
礼拜天没时间.13 小时前
力扣热题100实战 | 第25期:K个一组翻转链表——从两两交换到K路翻转的进阶之路
java·算法·leetcode·链表·递归·链表反转·k个一组翻转链表
w_a_o14 小时前
传统配方+机器学习:福尔蒂新材料用15年经验构建梯度回归预测模型(Python开源预告)
python·机器学习·回归·kmeans·宽度优先
Swift社区14 小时前
LeetCode 400 第 N 位数字
算法·leetcode·职场和发展