当前位置: 首页 > news >正文

深圳团购网站设计价格在浴室里做的网站

深圳团购网站设计价格,在浴室里做的网站,怎样做自己的销售网站,百度信息流投放技巧深度优先算法(Depth First Search,DFS)是一种常见的图形算法,它是一种用于遍历或搜索树或图的算法。在深度优先搜索中,我们首先探索一个子树的深度,然后再回溯到父节点,接着探索另一个子树的深度…

深度优先算法(Depth First Search,DFS)是一种常见的图形算法,它是一种用于遍历或搜索树或图的算法。在深度优先搜索中,我们首先探索一个子树的深度,然后再回溯到父节点,接着探索另一个子树的深度,直至搜索结束。

深度优先算法的基本思想是沿着树的深度遍历树的节点。深度优先算法的工作原理类似于树的前序遍历,即首先访问根节点,然后依次访问该节点的子节点。

深度优先算法可以用递归实现,也可以使用栈来实现。下面我们详细介绍这两种实现方式。

  1. 递归实现深度优先算法

下面是使用递归实现深度优先算法的示例代码:

void dfs(int node, vector &visited, vector> &graph) {// 标记节点node已被访问visited[node] = true;// 访问节点nodecout << node << " ";// 遍历node的所有邻居节点for (int i = 0; i < graph[node].size(); i++) {int neighbor = graph[node][i];// 如果邻居节点未被访问,则递归访问它if (!visited[neighbor]) {dfs(neighbor, visited, graph);}}
}

在这个示例中,我们首先定义一个函数dfs,它接收三个参数,分别是当前节点node、表示节点是否被访问的visited向量以及描绘图的邻接矩阵graph。在函数内部,我们首先将当前节点标记为已访问,并输出该节点的编号。然后我们遍历该节点的所有邻居节点,如果邻居节点未被访问,则递归地访问它。递归的终止条件是遍历完所有节点。

  1. 栈实现深度优先算法

下面是使用栈实现深度优先算法的示例代码:

void dfs(int node, vector &visited, vector> &graph) {stack stk;// 将起始节点入栈stk.push(node);while (!stk.empty()) {// 取出栈顶元素int cur = stk.top();stk.pop();// 如果当前节点未被访问,则访问它if (!visited[cur]) {visited[cur] = true;cout << cur << " ";// 将当前节点的邻居节点入栈for (int i = graph[cur].size() - 1; i >= 0; i--) {int neighbor = graph[cur][i];if (!visited[neighbor]) {stk.push(neighbor);}}}}
}

在这个示例中,我们首先定义一个函数dfs,它接收三个参数,分别是当前节点node、表示节点是否被访问的visited向量以及描绘图的邻接矩阵graph。在函数内部,我们创建一个栈,并将初始节点node入栈。在栈未空之前,我们重复执行以下步骤:

  • 取出栈顶元素
  • 如果当前节点未被访问,则将其标记为已访问,并输出该节点的编号
  • 遍历该节点的所有邻居节点,如果邻居节点未被访问,则将其入栈

在程序的最后,我们完成了整个深度优先遍历。

深度优先算法的时间复杂度为$O(V+E)$,其中$V$是图的节点数量,$E$是图的边数量。因为在遍历每个节点和边的时候,每个节点和边都会被访问一次。另外,深度优先算法的空间复杂度为$O(V)$,其中$V$是图的节点数量,因为需要存储每个节点的访问状态。

http://www.yayakq.cn/news/409752/

相关文章:

  • 教育网站建设市场分析计划书简洁的网站建设合同
  • 学校网站建设项目可行性分析报告简洁网站设计欣赏
  • 郑州建设企业网站公司自己在线制作logo免费u钙网
  • 网站建设过程中要注意沟通wordpress 个人发布功能
  • 湖北建设部网站官网深圳福田商城网站建设
  • wordpress软件下载站主题wordpress后台换中文
  • 做药品网站有哪些取个网站建设公司名字
  • 网站开发的进度表天津城市网络建设
  • 有没有教做零食的网站服装网站论文
  • 企业网站建站系统哪个好用网站做cpa赚钱
  • 网站建设使用情况网站内容建设
  • 做淘客网站需要多大的空间网站建设工作总结6
  • 江苏省工程建设信息网站毕节城乡建设局网站查询
  • 做网站怎么防止被网警查到百度线上推广
  • 做个网站多少钱公司网站设
  • 网站系统修改不了怎么回事柳州网站建设优化推广
  • 建论坛网站多少钱福州企业网站建站系统
  • 建设网站需要买什么安阳网站建设官网
  • 网站建设及维护招聘外贸搜索引擎
  • 果洛wap网站建设如何简单制作生理盐水
  • 电龙网站建设做sohu最好的推广网站
  • 手机网站设置在哪里找可以免费做3dLOGO的网站
  • 石家庄行业网站济南网站设计公司排名
  • 网站建设开发三层架构比较大的软件下载网站
  • 湘潭网站建设 多少费用磐石网络怎样做境外网站上赚钱
  • 建设电子商务网站的基本步骤怎么做新浪网站
  • 网站改版不换域名wordpress怎么实时刷新数据库
  • 资深的家居行业网站开发windows优化大师有必要安装吗
  • 一个设计网站多少钱咨询微平台
  • 建设网站免费支持php网络搭建是什么意思