首页 > 其他分享 >搜索与图论

搜索与图论

时间:2023-11-24 16:00:27浏览次数:38  
标签:图论 存储 DFS 搜索 cases sf rightarrow

目录

三、搜索与图论

3.1 深度优先搜索 \(\sf( DFS)\)和宽度优先搜索\(\sf( BFS)\)

DFS一直往下搜索,直到叶节点才开始回溯,属于一条路走到黑,”不撞南墙不回头“
BFS每次搜索的时候都搜完这一层的结点,属于“地毯式搜索”,层层推进。

数据结构 空间 性质(图的边权值均为1时
\(\sf DFS\) \(\sf stack\) \(O(h)\)(向下搜的时候只需记录该条路径上的点,空间与高度h成正比) 不具有最短性
\(\sf BFS\) \(\sf queue\) \(O(2^h)\)(记录一层的节点数) 有“最短路”的特性(第一次搜到的是最短路径)

DFS最重要的是寻找到一个可以遍历完整个搜索树的顺序

DFS例题1:
DFS例题2:

3.2 树和图的存储

树是无环连通图,因此只需考虑图的存储即可。

\[图 \begin{cases} 有向图:对于端点a、b,有有向边a\rightarrow b \\ 无向图:对于端点a、b,建两条有向边 a\rightarrow b,b\rightarrow a即可 \end{cases} \]

因此只需考虑有向图的存储:

\[有向图的存储方式: \begin{cases} 邻接矩阵(不能表示重边):g[a][b]\begin{cases} 若无权,则表示a \rightarrow b是否存在\\ 若有权,则表示 a \rightarrow b这条边的权值 \end{cases} 使用较少,适合存储稠密图,空间复杂度为O(n^2) \\ 邻接表 \end{cases} \]

标签:图论,存储,DFS,搜索,cases,sf,rightarrow
From: https://www.cnblogs.com/pangyou/p/17853979.html

相关文章

  • 陈关荣丨图论基础(下)
    https://mp.weixin.qq.com/s?__biz=MzI2NjE0MTY0MA==&mid=2652731403&idx=2&sn=2d5648125f380dc5b8e75742b599973a&chksm=f17b72acc60cfbba7accec8c2dcb1b3462373bde7c68dd48ad6f64fe9a346c1e5547641cd33c&scene=27如果所有的节点的度都比2大的话,那么不管你网络多大、多复杂,里面......
  • 代码随想训练营第四十一天(Python)| 不同的二叉树搜索树
    96.不同的二叉搜索树1、关键点找出状态转移方程classSolution:defnumTrees(self,n:int)->int:#创建dp数组,dp[i]代表节点数为i的二叉搜索树数量dp=[0]*(n+1)#初始化数组dp[0]=1#遍历每个元素作为根节点......
  • 基于python的种子搜索网站-开发过程
    本讲会对种子搜索网站的开发过程进行详细的讲解。 项目开发过程项目简介该项目是基于python的web类库django开发的一套web网站,做为本人的毕业设计。本人的研究方向是一项关于搜索的研究项目。在该项目中,笔者开发了一个简单版的搜索网站,实现了对数据库数据的检索和更新。网站域名......
  • Win11 SQL Server 安装程序无法通过 Windows Update 服务搜索更新。
    SQLServer安装提示安装程序无法通过windowsupdate服务搜索更新SQLServer安装提示安装程序无法通过windowsupdate服务搜索更新_sqlserver安装程序无法通过windowsupdate-CSDN博客解决方法:手动创建DefaultSetup.ini放置到安装程序文件夹里的x64或者x86目录中,如果De......
  • 图论杂项 学习笔记
    图论专题新学的知识点有点太多了,还是新开一篇比较好。数据结构优化建图reference:常见优化建图技巧。考虑一个题:CF786B。思考如何维护单点/区间向单点/区间连边:点对点。直接连就行。点对区间。开一颗线段树,每个节点代表一段区间,父亲向儿子连权为\(0\)的边。点对区间连边......
  • 直播app源码,默认显示搜索框 保留搜索条件
    直播app源码,默认显示搜索框保留搜索条件<template> <div:class="{'show':show}">  <svg-iconclass-name="search-icon"icon-class="search"@click.stop="click"/>  <el-select   ref="headerSear......
  • 面试必刷TOP101:30、二叉搜索树与双向链表
    题目题解/*思路:首先根节点以及其左右子树,左子树的左子树和右子树的右子树相同*左子树的右子树和右子树的左子树相同即可,采用递归*非递归也可,采用栈或队列存取各级子树根节点*/publicclassSolution{ booleanisSymmetrical(TreeNodepRoot) { if(pRoot==null){ re......
  • 百度搜索万亿规模特征计算系统实践
    作者|Jay导读本文主要介绍百度搜索在全网万亿级规模内容做内容理解的工程实践,涉及机器学习工程化、资源调度、存储优化等多个Topic。全文6648字,预计阅读时间17分钟。01业务背景百度收录了互联网海量内容,要索引这些内容,需要先对内容做深度理解,提取包括内容语义、内容质量、内容安......
  • chrome:在url中指定搜索引擎
    1、浏览器设置里面找到搜索引擎,添加网站搜索,点击添加默认搜索就会添加到搜索引擎中2、然后在url中输入快捷词+空格,然后在输入要搜索的内容即可 ......
  • C++U5-06-广度优先搜索3
    广搜逻辑  广搜代码核心思路 广搜伪代码前面讲解的广度优先搜索案例都类似迷宫类的问题,但有些非迷宫类问题也可以使用广搜的思路解决[【广搜】转弯]【算法分析】可以以转弯次数为依据进行广搜,这样就是每一个方向都走到尽头。特别要注意的是当这个位置访问过,还......