最新 最热

DFS:解决二叉树问题

所谓DFS就是就是深度优先搜索,首先我们回到我们以前学习过的二叉树,对于二叉树我们讲过深度优先遍历,也就前序,后序,中序,这三种遍历方式,对于深度优先搜索,深度优先遍历是一个过程,在这个过程中我们加上搜索。 在一颗二叉树上...

2024-10-09
5

数据结构与算法——DFS(深度优先搜索)

深度优先搜索(Depth-First Search,简称DFS)是一种用于遍历或搜索树或图的算法。这种算法会尽可能深地搜索图的分支,直到找到目标节点或达到叶节点(没有子节点的节点),然后回溯到上一个分支继续搜索。DFS可以用于许多问题,比如...

2024-09-23
3

AcWing 1355. 母亲的牛奶(每日一题)

有时,约翰会将牛奶从一个桶倒到另一个桶中,直到被倒入牛奶的桶满了或者倒出牛奶的桶空了为止。

2024-09-23
3

文心一言 VS 讯飞星火 VS chatgpt (331)-- 算法导论22.5 7题

为了判断一个有向图是否是半连通的,我们可以使用深度优先搜索(DFS)或广度优先搜索(BFS)。核心思路是检查从任意顶点出发是否能访问到所有其他顶点,并且对于任意顶点,都存在一条路径到达另一个顶点或另一个顶点存在一条路径到...

2024-08-29
3

文心一言 VS 讯飞星火 VS chatgpt (326)-- 算法导论22.5 2题

为了解释STRONGLY-CONNECTED-COMPONENTS算法在图22-6(假设是一个有向图)上的运行过程,并满足你的要求,我们将首先概述算法的基本步骤,然后具体说明在图上的执行过程,并给出Go语言的伪代码实现。...

2024-08-20
3

【经验分享】数据结构——总结,图的深度优先遍历(DFS)和广度优先遍历(BFS)与二叉树遍历的比较

深度优先遍历(DFS,Depth-First Search)是一种图遍历算法,它沿着图的深度方向进行搜索。DFS 从一个起始节点开始,优先访问未被访问的邻接节点,尽可能深地探索每个分支,直到所有可能的分支都被访问过,然后回溯到上一个节点继续...

2024-08-17
2

文心一言 VS 讯飞星火 VS chatgpt (319)-- 算法导论22.3 11题

十一、请解释有向图的一个结点u怎样才能成为深度优先树中的唯一结点,即使结点u同时有入边和出边。如果要写代码,请用go语言。

2024-08-16
3

文心一言 VS 讯飞星火 VS chatgpt (317)-- 算法导论22.3 9题

九、请给出如下猜想的一个反例:如果有向图G包含一条从结点u到结点v的路径,则任何对图G的深度优先搜索都将导致v.d⩽u.f。如果要写代码,请用go语言。...

2024-08-16
4

文心一言 VS 讯飞星火 VS chatgpt (316)-- 算法导论22.3 8题

八、请给出如下猜想的一个反例:如果有向图G包含一条从结点u到结点v的路径,并且在对图G进行深度优先搜索时有u.d<v.d,则结点v是结点u在深度优先森林中的一个后代。如果要写代码,请用go语言。...

2024-08-16
3

文心一言 VS 讯飞星火 VS chatgpt (312)-- 算法导论22.3 1题

一、画一个 $3times3$ 的网格,行和列的抬头分别标记为白色、灰色和黑色。对于每个表单元 (i,j) ,请指出在对有向图进行深度优先搜索的过程中,是否可能存在一条边,连接一个颜色为 i 的结点和一个颜色为 j 的结点。对于每种...

2024-08-16
4