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

代码随想录算法训练营第五十天|图论理论基础,深搜理论基础,98. 所有可达路径,广搜理论基础

图论理论基础:邻接矩阵、邻接表??-写不出来 = 没入门

而且图论应用广泛,在大家做项目开发的时候,或多或少都会用到图论相关知识。例如:通信网络(拓扑排序、最短路算法),社交网络(深搜、广搜),路径优化(最短路算法),任务调度(拓扑排序),生物信息学(基因为节点,基因关系为边),游戏开发(A * 算法等)等等

图的种类(有向图、无向图、权重)

度:有多少条边连接这个节点,出度&入度(only make sense when有向图)

连通图(在无向图中,任何两个节点都是可以到达的,我们称之为连通图) & 非连通图

强连通图(在有向图中,任何两个节点是可以相互到达的,我们称之为 强连通图)

连通分量

强连通分量

图的构造

朴素存储(n*2 array)

邻接矩阵(n*n矩阵,内存空间比较大)

邻接表(增量 在于 边 的数量)

图的遍历(之前在“二叉树”学过DFS & BFS-有印象学过,但现在应该不会写了😭)

DFS深搜

BFS广搜

深度优先搜索理论基础Depth First Search

recall: 回溯算法(本质也是dfs)

深搜三部曲:1.确定函数 & 参数,2.确定终止条件,3. for(选择本节点连接的节点) - 处理节点 - dfs(图,选择的节点) - 回溯,撤销处理结果

卡码网:98.可达路径

对AMC真的没招了😮‍💨

Broad First Search广度优先搜索

对于matrix的BFS理解:只能上下左右的方向进行搜索(不能斜着)(队列:先入先出/栈:先进后出/数组)

试着跟着写python pseudo-code:

#使用邻接矩阵存图,遍历过的节点不能再次遍历visited

定义全局变量(四个方向的遍历那个)dir = [[0, 1], [1, 0], [-1,0], [0,-1]]

def bfs(graph, visited, x, y):

#以下是把起点加入队列queue

queue #这是起点坐标

queue.append(x, y)

visited[x][y] = 1 #表示已经访问过

while len(queue) != 0:#队列不为空

#取出队列中的首元素

cur = queue[-1]?还是queue[0]

queue.pop()

for i in range(0, 4):

nextx = cur[0] + dir[i][0]

nexty = cur[1] + dir[i][1]

if nextx, nexty >=#越界了就不能处理

continue

if visited[nextx][nexty] == 1#之前访问过也不能重复加入到队列里:

continue

queue.append([nextx, nexty])

visited[nextx][nexty] == 1

http://www.jsqmd.com/news/102982/

相关文章:

  • 50、深入理解 I/O 系统:原理、机制与性能优化
  • 51、计算机系统的I/O与保护机制解析
  • 52、计算机系统访问控制与保护机制解析
  • 48、计算机存储与I/O系统深度解析
  • 49、操作系统 I/O 系统全面解析
  • 46、大容量存储结构:交换空间管理与RAID技术解析
  • 47、磁盘存储系统的全面解析与性能优化
  • 45、大容量存储结构详解
  • EmotiVoice能否生成带有呼吸声和停顿的真实感语音?
  • 基于微信小程序的在线家庭医生系统毕业设计源码
  • Java注解与反射进阶:自定义注解开发及框架底层应用
  • 开源TTS新突破:EmotiVoice实现高表现力语音生成
  • Java并发编程全解析:从线程安全到JUC容器实战
  • 字节跳动今年校招的薪资!!!
  • 温州医科大学本科生一年内发表近50篇sci论文?
  • EmotiVoice语音情感标注工具开源项目征集
  • 数据、数据库分类
  • EmotiVoice + GPU算力:实现毫秒级高保真语音生成
  • LobeChat环境变量设置大全:部署时必须知道的关键参数
  • p13mybatisplus12扩展功能代码生成器 找不到config database这个按钮
  • 如何将idea最上方的工具栏,最上方的菜单显示出来?
  • 【深圳】嵌入式AI实战:半天上手,人形检测模型部署+优化全流程
  • SCS 60.单细胞空间转录组空间聚类(SPATA2)
  • 基于EmotiVoice的有声内容创作指南:提升听众沉浸感
  • LobeChat能否支持黑洞吸积盘模拟?极端物理环境可视化解释
  • 【完全免费】超好用录屏软件,无时长限制,最高支持高清8K无水印录制,新人UP主游戏录屏录课必备工具。
  • EmotiVoice语音合成在语音邮件自动化中的效率提升
  • Day 41 训练和测试的规范写法
  • EmotiVoice语音口音模拟能力测试:能否模仿地域特色?
  • 支持自定义音色:EmotiVoice助力品牌专属语音打造