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

湖南英文网站建设网络推广公司哪家好

湖南英文网站建设,网络推广公司哪家好,google search,营销型网站建设解决方案文章目录 理解图的基本概念学习图的遍历算法学习最短路径算法案例分析:使用 Dijkstra 算法找出最短路径结论 🎉欢迎来到数据结构学习专栏~探索图结构:从基础到算法应用 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:I…

文章目录

      • 理解图的基本概念
      • 学习图的遍历算法
      • 学习最短路径算法
      • 案例分析:使用 Dijkstra 算法找出最短路径
      • 结论

在这里插入图片描述

🎉欢迎来到数据结构学习专栏~探索图结构:从基础到算法应用


  • ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒🍹
  • ✨博客主页:IT·陈寒的博客
  • 🎈该系列文章专栏:数据结构学习
  • 📜其他专栏:Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习
  • 🍹文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏
  • 📜 欢迎大家关注! ❤️

图结构是计算机科学中的一项重要内容,它能够模拟各种实际问题,并在网络、社交媒体、地图等领域中具有广泛的应用。本文将引导你深入了解图的基本概念、遍历算法以及最短路径算法的实际应用。
在这里插入图片描述

理解图的基本概念

顶点和边: 图由一组顶点(vertices)和连接这些顶点的边(edges)构成。边可以带有权重(weight),代表两个顶点之间的关系强度或成本。

在这里插入图片描述

有向图与无向图: 有向图中的边是有方向的,从一个顶点指向另一个顶点;无向图中的边没有方向,是双向的。

在这里插入图片描述

权重图: 权重图中的边带有权重,用于表示顶点之间的距离、代价等信息。
在这里插入图片描述

学习图的遍历算法

深度优先搜索(DFS): DFS 是一种遍历图的算法,它从一个起始顶点开始,递归地访问相邻顶点,直到无法继续为止。DFS 的应用包括查找连通分量、拓扑排序等。

在这里插入图片描述

广度优先搜索(BFS): BFS 也是一种遍历图的算法,它从起始顶点开始,逐层访问其邻居顶点。BFS 的应用包括查找最短路径、社交网络中的“六度分隔”等。

学习最短路径算法

Dijkstra 算法: Dijkstra 算法用于查找带权重的图中从一个起始顶点到其他顶点的最短路径。它采用贪心策略,每次选择当前距离最近的顶点进行拓展。Dijkstra 算法的应用包括路由算法、地图导航等。

在这里插入图片描述

Bellman-Ford 算法: Bellman-Ford 算法也用于查找图中的最短路径,但与 Dijkstra 算法不同,它适用于带有负权边的图。Bellman-Ford 算法通过进行多次松弛操作逐步逼近最短路径。

案例分析:使用 Dijkstra 算法找出最短路径

假设我们有一个城市之间的道路网络,每条道路都有对应的时间(权重)。我们想要找到从起始城市到目标城市的最短时间路径。以下是使用 Dijkstra 算法实现这个目标的示例代码:

import java.util.*;public class ShortestPath {public Map<String, Integer> findShortestPath(Map<String, Map<String, Integer>> graph, String start, String end) {PriorityQueue<String> pq = new PriorityQueue<>(Comparator.comparingInt(graph.get(start)::get));Map<String, Integer> distances = new HashMap<>();Map<String, String> predecessors = new HashMap<>();distances.put(start, 0);graph.keySet().forEach(city -> {if (!city.equals(start)) {distances.put(city, Integer.MAX_VALUE);predecessors.put(city, null);}pq.offer(city);});while (!pq.isEmpty()) {String current = pq.poll();for (Map.Entry<String, Integer> neighbor : graph.get(current).entrySet()) {int newDistance = distances.get(current) + neighbor.getValue();if (newDistance < distances.get(neighbor.getKey())) {distances.put(neighbor.getKey(), newDistance);predecessors.put(neighbor.getKey(), current);}}}Map<String, Integer> shortestPath = new HashMap<>();String current = end;while (current != null) {shortestPath.put(current, distances.get(current));current = predecessors.get(current);}return shortestPath;}public static void main(String[] args) {ShortestPath shortestPath = new ShortestPath();Map<String, Map<String, Integer>> graph = new HashMap<>();graph.put("A", Map.of("B", 5, "C", 2));graph.put("B", Map.of("D", 1, "E", 6));graph.put("C", Map.of("B", 1, "D", 4));graph.put("D", Map.of("E", 1));graph.put("E", Collections.emptyMap());String start = "A";String end = "E";Map<String, Integer> result = shortestPath.findShortestPath(graph, start, end);System.out.println("Shortest path from " + start + " to " + end + ": " + result);}
}

结论

图结构在现实世界中有着丰富的应用,从社交网络到交通系统。了解图的基本概念、遍历算法以及最短路径算法,可以让你更好地理解和处理与图相关的问题。通过学习这些知识,你将能够在解决实际问题时更加灵活和高效地运用图结构和算法。


🧸结尾


❤️ 感谢您的支持和鼓励! 😊🙏
📜您可能感兴趣的内容:

  • 【Java面试技巧】Java面试八股文 - 掌握面试必备知识(目录篇)
  • 【Java学习路线】2023年完整版Java学习路线图
  • 【AIGC人工智能】Chat GPT是什么,初学者怎么使用Chat GPT,需要注意些什么
  • 【Java实战项目】SpringBoot+SSM实战:打造高效便捷的企业级Java外卖订购系统
  • 【数据结构学习】从零起步:学习数据结构的完整路径

在这里插入图片描述

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

相关文章:

  • 网站app怎么做企业网站制作需要多少钱
  • 08网站建设桂林市生活网官方网站
  • 仿站WordPress网站内容为王
  • 百度网站建设的十一个使用html做网站的网页
  • 重庆网站搭建什么在56网站做推广
  • 本地dedecms网站广告网站策划方案
  • 网站留言系统 提交没反应企业网络推广的方法有哪些
  • 做网站搜索结果的代码wordpress 调用图片
  • 太原北京网站建设公司哪家好网站粘度计算公式
  • 关于网站建设领导分工《小城镇建设》》杂志社网站
  • 四川门户网站建设管理规定点图片跳到网站怎么做
  • 网站开发开发的前景Wordpress的htaccess在哪
  • 个人网站推荐免费手机 网站
  • 公司网站模板侵权案例百度地图导航2022最新版下载
  • 有账号和密码怎么进公司网站后台wordpress标签自动生成插件下载
  • 做机械设计图纸找什么网站?红色门户网站
  • 做网站要网站模板 可做采集站
  • 做网站如何文字链接文字昆明做网站建设哪家好
  • 邮箱qq登录入口上海网站营销seo方案
  • 网站升级需要什么php网站建设自我总结
  • 广州网站建设圣矢wordpress站点统计插件
  • 网站链接dw怎么做如何做网站公众号推广
  • 做网站需要学会些什么颐和国际沧州网络科技
  • 苏州建设局网站实名制网页版我的世界
  • 西安十大网站制作公司php语言做购物网站
  • 视频盗版网站怎么做最新新闻热点事件中国
  • 胶州网站建设电话.湖南省建设厅规范网站
  • 学院网站建设报价上传空间站的注意事项
  • 济南网站建设优化百家号互联网网站项目方案书
  • 网站建设 投标如何快速做h5网站