news 2026/5/15 21:55:28

代码随想录算法训练营第五十八天|拓扑排序精讲,Dijkstra算法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
代码随想录算法训练营第五十八天|拓扑排序精讲,Dijkstra算法

拓扑排序

这个有向图转成线性的排序 就叫拓扑排序

当然拓扑排序也要检测这个有向图 是否有环,即存在循环依赖的情况,因为这种情况是不能做线性排序的。

所以拓扑排序也是图论中判断有向无环图的常用方法

可以用BFS& DFS两种方法解决

接下来我给出 拓扑排序的过程,其实就两步:

  1. 找到入度为0 的节点,加入结果集
  2. 将该节点从图中移除

Coding

1. 为了每次可以找到所有节点的入度信息,我们要在初始化的时候,就把每个节点的入度 和 每个节点的依赖关系做统计。

2. 用queue存放nodes whose in-degree = 0

3. 将该节点作为出发点所连接的节点的in-degree -1

Dijkstra朴素版

之前在optimization课堂上学过,希望作为复习,捡起来很快

求最短路

dijkstra算法:在有权图(权值非负数)中求从起点到其他节点的最短路径算法。

需要注意两点:

  • dijkstra 算法可以同时求 起点到所有节点的最短路径
  • 权值不能为负数

dijkstra三部曲

  1. 第一步,选源点到哪个节点近且该节点未被访问过
  2. 第二步,该最近节点被标记访问过
  3. 第三步,更新非访问节点到源点的距离(即更新minDist数组)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/13 4:45:17

MGeo开源贡献指南:如何参与代码改进与反馈

MGeo开源贡献指南:如何参与代码改进与反馈 1. 背景与项目价值 随着城市数字化进程的加速,地址数据在物流、地图服务、政务系统等场景中扮演着关键角色。然而,中文地址存在表述多样、缩写习惯差异、层级结构不统一等问题,导致不同…

作者头像 李华
网站建设 2026/5/12 15:55:00

通义千问2.5实战案例:跨境电商文案生成系统部署实操

通义千问2.5实战案例:跨境电商文案生成系统部署实操 1. 背景与业务需求 随着全球电商市场的持续扩张,跨境电商平台对多语言、高效率的内容生成能力提出了更高要求。传统人工撰写商品描述、广告语、营销邮件等方式已难以满足海量 SKU 和快速上新的节奏。…

作者头像 李华
网站建设 2026/5/15 12:25:56

CPU友好型语义相似度服务|GTE向量模型镜像深度应用

CPU友好型语义相似度服务|GTE向量模型镜像深度应用 1. 背景与应用场景 在自然语言处理(NLP)领域,语义相似度计算是构建智能系统的核心能力之一。无论是问答系统、推荐引擎、文本去重,还是客服机器人中的意图匹配&…

作者头像 李华
网站建设 2026/5/12 6:43:52

小白也能懂:Whisper-large-v3语音识别5分钟快速上手

小白也能懂:Whisper-large-v3语音识别5分钟快速上手 引言:为什么你需要Whisper-large-v3? 在当今多语言、跨地域的沟通环境中,语音识别技术正从“能听清”向“能理解”快速演进。OpenAI推出的Whisper系列模型,尤其是…

作者头像 李华
网站建设 2026/5/11 20:39:01

AI应用降本增效:DeepSeek-R1-Distill-Qwen-1.5B企业部署案例

AI应用降本增效:DeepSeek-R1-Distill-Qwen-1.5B企业部署案例 1. 背景与技术选型动因 在当前AI大模型快速发展的背景下,企业对高效、低成本的本地化推理方案需求日益增长。尽管千亿参数级模型在性能上表现卓越,但其高昂的算力成本和部署门槛…

作者头像 李华
网站建设 2026/5/13 10:33:35

玩转大模型必备技能:Qwen3-Embedding云端实践指南,低价高效

玩转大模型必备技能:Qwen3-Embedding云端实践指南,低价高效 你是不是也和我一样,刚踏入职场不久,工资勉强够生活开销,但又特别想通过AI项目提升自己的技术履历?想学大模型、搞点能写在简历上的实战项目&am…

作者头像 李华