胶州市网站建设seo 哪些媒体网站可以发新闻

news/2025/9/23 17:47:23/文章来源:
胶州市网站建设,seo 哪些媒体网站可以发新闻,建设摩托车官方旗舰店,我建设的网站打开很慢目录 dijkstra算法求最短距离步骤 朴素的dijkstra算法---acwing-849 代码如下 代码思路 堆优化版的dijkstra算法---acwing-850 代码如下 关于最短路问题分有好几种类型 #xff1a; 单源就是指#xff1a;只求从一个顶点到其他各顶点 多源是指#xff1a;要求每个顶…目录 dijkstra算法求最短距离步骤 朴素的dijkstra算法---acwing-849 代码如下 代码思路  堆优化版的dijkstra算法---acwing-850 代码如下 关于最短路问题分有好几种类型  单源就是指只求从一个顶点到其他各顶点 多源是指要求每个顶点到其他各顶点  这些情况对应有不同的算法这次先介绍dijkstra算法的两种。  dijkstra算法求最短距离步骤 我们手写的步骤就是 1. 确定我们要处理的单源点。即我们是想 从哪个顶点开始寻找到其他顶点的最短路径。 2. 第一轮看该顶点到其他任意顶点的距离并记录下来。一般只有直连的顶点是边的权重其他不直连的都是正无穷每个顶点都看过之后选出这些记录下来的距离的最小值所对应的顶点编号。 3. 相当于第二轮的时候我们可以看作起始顶点是上一轮选出的最小距离的顶点且起步价就是初始值是这个最小距离。由此不断迭代直到寻找过所有顶点到开始顶点的最短距离。【我觉得这种思路比较好理解对应下面视频讲解的第二个】 如下图 (INF表示的是正无穷) 关于该算法的一些视频讲解的推荐 【图-最短路径-Dijkstra(迪杰斯特拉)算法】 【【全网第二清晰】手写迪杰斯特拉-Dijkstra考试用】 讲的都很清晰可以看一下 朴素的dijkstra算法---acwing-849 代码如下 步骤明白之后代码的含义需要解释的都写在注释里了。  #includeiostream #includecstring #includealgorithm using namespace std; const int N510; int n,m; int g[N][N];//用邻接矩阵来存储稠密图二维数组的每一位表示【行标指向列标的边 所对应的权重】 int dist[N];//存储从起点到其他节点当前的最短距离 bool st[N];//标记该点是否已经已经被寻找过int dijkstra() {memset(dist,0x3f,sizeof dist);//初始状态所有的距离都是正无穷dist[1]0;//习惯将节点从1开始编号且本题求的就是1节点到其他节点的最短距离。该点到其自身的距离为0//确保了寻找了每个节点到源节点的最短路径for(int i0;in;i){int t-1;// 用于标记当前轮次中【距离最短的未访问节点的编号】初始化为 -1 表示尚未找到有效节点for(int j1;jn;j){if(!st[j] (t-1 || dist[t]dist[j])){tj;//找到当前轮次中距离最短的未访问节点的编号}}st[t]1;//找到后将其标记为1//通过选定的节点更新到其他节点的最短距离for(int j1;jn;j){dist[j]min(dist[j],dist[t]g[t][j]);//g[t][j]表示经过节点t到达节点j的路径长度}}if(dist[n]0x3f3f3f3f)return -1;return dist[n]; } int main() {cinnm;memset(g,0x3f,sizeof g);while(m--){int a,b,c;cinabc;g[a][b]min(g[a][b],c);//面对多重边的情况 取权值小的边}int tdijkstra();coutt;return 0; } 代码思路  1.根据题目中的数据范围边数远远大于顶点数因此是稠密图且用邻接矩阵存储图。 而这里每条边都会有各自权值因此用邻接矩阵加边直接更改二维数组中对应位置为对应权重即代表了存在权值为x的边。不用单独写添加边的函数。 2.求1-n任意一个顶点的最短距离使用dijkstra算法。单独分装函数函数内部也就是代码实现该算法的步骤。 3.dijkstra函数内部。首先初始化dist数组值为正无穷。注意dist数组的含义是下标表示顶点该数组表示下标对应的顶点距起始顶点的最短距离。由于我们是从1号顶点开始且其自身到自身的距离应该是0由此初始dist[1]0 之后就开始经过n轮寻找确保每一个顶点都进行了寻找因此外层循环次数为n次。由于只是控制次数所以从0~n-1的循环条件是可以的当然也可以写1~n 需要创建一个st数组做标记标记那些已经找到最短距离的点。下标表示点的编号。 每次寻找需要做什么观察所有顶点(内层for循环)找到距离源点距离最短的顶点标记该顶点已经找到最短距离之后遍历所有顶点更新最短距离看加了这个点之后其他有没有哪个点有更优的最短距离进行更改即可。 这段代码的时间复杂度最差是O(n^2)与边数m无关因此适用于稠密图。  堆优化版的dijkstra算法---acwing-850 这道题的区别就是n和m的取值范围是相同的都是1.5e5 该图为稀疏图。首先不同的就是这道题会采用邻接表存储图。 代码上的不同主要就是利用堆来简化循环的嵌套降低时间复杂度。 之前写的关于堆的文章可以回顾一下。 手写堆 【第十五课】数据结构堆 (“堆”的介绍主要操作 / acwing-838堆排序 / 时间复杂度的分析 / c代码 ) 【第十五课】数据结构堆(acwing-839模拟堆 / ph和hp数组的映射关系 /c代码 ) stl优先队列 【第十七课】c常用的STL容器 代码如下 我们这里使用优先队列实现。  #includeiostream #includecstring #includealgorithm #includequeue//使用优先队列 using namespace std; typedef pairint,int PII;//第一个元素表示最短距离第二个元素表示顶点编号 const int N1.5e510; int n,m; int h[N],e[N],ne[N],w[N],idx; int dist[N];//存储从起点到其他节点当前的最短距离 bool st[N];//标记该点是否已经被处理过void add(int a,int b,int c) {e[idx]b;ne[idx]h[a];w[idx]c;h[a]idx; } int dijkstra() {memset(dist,0x3f,sizeof dist);//初始状态所有的距离都是正无穷dist[1]0;//习惯将节点从1开始编号且本题求的就是1节点到其他节点的最短距离。该点到其自身的距离为0priority_queuePII,vectorPII,greaterPII he;//创建小根堆he.push({0,1});//先将源点加入队列while(he.size())//当队列不为空{PII the.top();he.pop();//将当前的最短距离出队int vert.second,distancet.first;//ver表示顶点 distance表示最短距离if(st[ver])continue;//如果这个顶点已经处理过就直接跳过for(int ih[ver];i!-1;ine[i])//遍历这个点的所有直连的边{int je[i];if(dist[j]distancew[i])//更新与其直连的点的最短距离{dist[j]distancew[i];he.push({dist[j],j});}}}if(dist[n]0x3f3f3f3f)return -1;return dist[n]; } int main() {cinnm;memset(h,-1,sizeof h);while(m--){int a,b,c;cinabc;add(a,b,c);}int tdijkstra();coutt;return 0; } 注意这里其实并没有处理重边这是因为我们是按照逐个顶点遍历其所连的边处理的对于重边我们会和该顶点的其他边一样进行平等的判断得出一个最短距离的边。只有最短的边会在当前阶段影响最短路径。 使用优先队列所优化的是求最短距离这一步本来需要遍历所有节点找到离源点距离最小的点时间复杂度为 O(n)通过优先队列实现小根堆堆顶是最小值直接将这一步优化为O(1) 感觉堆优化版的更好理解一点朴素的做法每层循环的功能要搞明白清楚执行的什么操作。 好啦先写到这里。 有问题欢迎指出一起加油

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/913364.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实用指南:详解RabbitMQ高级特性之延迟插件的安装和使用

实用指南:详解RabbitMQ高级特性之延迟插件的安装和使用2025-09-23 17:44 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; …

Django 视图层

目录视图函数HttpRequest对象常用属性:常用方法:HttpResponse对象 参考文档:https://zhuanlan.zhihu.com/p/151368045 视图函数 视图函数,简称视图,属于Django的视图层,默认定义在views.py文件中,是用来处理web请…

科技 公司 响应式 网站知名广州网站建设

前言 阅读本文需要阅读一些前置知识 [信号与系统]傅里叶变换、卷积定理、和为什么时域的卷积等于频域相乘。 [信号与系统]有关滤波器的一些知识背景 [信号与系统]关于LTI系统的转换方程、拉普拉斯变换和z变换 [信号与系统]关于双线性变换 IIR滤波器的数学表达式 IIR&…

第二部分:VTK核心类详解(第38章 vtkPointData点数据类) - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Kettle: pentaho-server-9.4登录问题

测试环境:Pentaho-server-ce-9.4.0.0 + mysql8.0.35+ openJDK11测试环境:Pentaho-server-ce-9.4.0.0 + mysql8.0.35+ openJDK11 点击登陆时(admin / password) .界面提示: 发生登录错误。请重试。 部分日志信息如…

企业内部信息网站如何建设广告设计培训学校

设置pdo属性 $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, true);

网站开发市场分析丹东网站建设

效果 1、适合搜素表单布局,查询重置等功能块始终位于最后一行的最后一列 2、适合普通多行两端对齐,未填充满的行左对齐 思路 此脚本目的为实现整齐风格的表单布局,为了达到整齐的效果,每个表单元素或者块都要设置一致的 宽度…

网站商城的建设今天中美关系最新消息

高校教务系统密码加密逻辑及JS逆向 本文将介绍皖西学院教务系统的密码加密逻辑以及使用JavaScript进行逆向分析的过程。通过本文,你将了解到密码加密的基本概念、常用加密算法以及如何通过逆向分析来破解密码。 本文仅供交流学习,勿用于非法用途。 一、密…

网站推广问题学做西餐网站

在Vue.js框架中,数据监听是一个核心功能,它允许开发者创建响应式的应用程序。这一功能的实现主要依赖于Vue的响应式系统,其中最关键的部分是如何监控数据变化并响应这些变化。以下是一个对Vue中数据监听实现方式的简要概述,适用于…

城市建设投资公司 网站开发者选项怎么打开

学习目标: 解释Linux网络配置的重要性和作用引入常见的面试问题 学习内容: 如何查看当前系统的IP地址和网关信息? 解答:可以使用ifconfig命令来查看当前系统的IP地址和网关信息。通过运行ifconfig命令,将会列出所有可…

Win11/Win10/Office 永久激活

1、使用快捷键Windows键+R键打开运行框,输入powershell,点确定运行,弹出powershell命名行输入窗口,输入以下命令进行激活: irm https://get.activated.win | iex同时也可以输入备用命令进行激活: irm win.zyqq.to…

提供微网站制作网络公司推广公司网站有哪些方式

很相似的两个概念,一不小心就会混淆 首先,对两个名词做一个大概的解释: 下标越界 在引用数组元素时,使用的下标超过了该数组下标的应有范围,但应注意的是: C/C不对数组做边界检查。 可以重写数组的每一…

springboot~获取原注解的方法findMergedAnnotation使用场景

这是一个很好的问题,涉及到Spring注解的元注解处理和属性别名机制。让我详细解释一下Spring JMS是如何获取到你自定义注解中的destination值的。 核心机制:Spring的注解属性别名(Attribute Aliasing) 当你在自定义注…

自己有个服务器 怎样做网站深圳东莞网站开发

一.问题描述 假如我们有一个数组,数组中的元素有正数和负数,如何在数组中找到一段连续的子数组,使得子数组各个元素之和最大。 二.问题分析 分治法求解: 初始状态: low0;highA.length-1;mid&am…

贵阳网站建设哪家公司好山东做网站公司

目录 一. 🦁 前言二. 🦁 像小说一样趣读 Linux 源码三. 🦁 学习路线 一. 🦁 前言 最近、道然科技给狮子送了两本书:一本是付东来的《labuladong的算法笔记》、一本是闪客著的《Linux源码趣读》,《labulado…

手机网页及网站设计网站设计大概多少钱

添加法国,它位于右下方,因此我们应该看到一点…plot(FR,addTRUE)然后,我们可以检索英国退欧公投数据referendumddply(referendum,.(Region,HASC_code),summarise,Remainsum(Remain),Leavesum(Leave))我们可以发现,脱欧赢得了51.89…

德宏网站制作企业推广方式优选隐迅推

一、前言 本次部署elk所有的服务都部署在k8s集群中,服务包含filebeat、logstash、elasticsearch、kibana,其中elasticsearch使用集群的方式部署,所有服务都是用7.17.10版本 二、部署 部署elasticsearch集群 部署elasticsearch集群需要先优化…

南通做网站建设公司网站建设方案计划书人员规划

文章目录一、拖拽滚动1、封装函数2、示例:二、滚轮缩放1、封装函数2、结合拖拽滚动示例一、拖拽滚动 1、封装函数 /*** description 使用鼠标拖拽div,实现横向、纵向滚动* param el 被拖拽滚动的元素(产生滚动条的元素)*/functio…

比较好的wordpress主题seo外链优化方法

Qt Design Studio设计出的项目结构有多个层级的目录,我们直接用类似Qt Creator工具的方式加载main.qml文件时会报错提示module "content" is not installed,将content加入importPath后还是报同样的错误。 Qt Design Studio生成的文件包含了.qm…

南宁seo网站建设费用环保网站建设公司哪家好

股票商场是一种杂乱的国际,不同类型的股票对应不同的生意商场。其间,创业板股票是一个备受关注的论题。那么,什么样的股票归于创业板呢?本文将从商场定义、股票分类以及出资关键点三个角度分析这个问题,帮忙读者全面了…