美文网首页
2021-06-26图

2021-06-26图

作者: 竹blue | 来源:发表于2021-06-29 13:59 被阅读0次

概念

一种非线性数据结构,比树复杂。

分类

  • 有向图
  • 无向图
  • 带权图

存储

  • 邻接矩阵法:

    1. 缺点:浪费存储空间。
    2. 优点:存储方式简单、直接、方便计算。
    3. 应用:Floy-Warshall算法
  • 邻接表法:

    1. 查询效率没有邻接矩阵存储方式高。

    2. 如果链过长,可以将链表转换成其他更高效的数据结构,比如平衡二叉查找树。

    3. 实际开发中,用红黑树或其他动态数据结构,比如跳表、散列表等,更快速地找到两个顶点之间是否存在边。

    4. 将链表改为有序动态数组,通过二分查找的方法快速定位两个顶点之间是否存在边。

      逆邻接表

应用场景

  • 好友
  • 亲密度
  • 关注用户
  • 粉丝

图上的收搜算法

在图中找到从一个顶点出发,到另一个顶点的路径。

Dijkstra算法 -- 贪心算法

概念

  1. 计算一个节点到其他所有节点的最短路径
  2. 一种单源最短路径算法

复杂度

时间复杂度:O(E*logV)

A*算法--动态规划

概念

  1. 对Dijkstra算法的优化和改造,可以更加快速找到从起点到终点的路线。
  2. 一种启发式搜索算法
    • 启发式搜索算法有:IDA*算法、蚁群算法、遗传算法、模拟退火算法等。

和Dijkstra算法代码的3点区别

  1. 优先级队列构建的方式不同
  2. A算法在更新dist值的时候,同步更新f值*。//TODO
  3. 循环结束的条件不一样。

应用场景

地图、游戏中的地图

相关文章

  • 2021-06-26图

    概念 一种非线性数据结构,比树复杂。 分类 有向图无向图带权图 存储 邻接矩阵法:缺点:浪费存储空间。优点:存储方...

  • KVO与KVC

    一、KVO截屏2021-06-26 下午2.06.12.png MJPerson有个属性age,这里对age进行K...

  • 基因组Survey(二代测序数据质控)

    2021-06-26 一. 为什么要做基因组Survey? Survey分析要做什么数据准备?(1)QC方法介绍(...

  • 谨记--周年

    2021-06-26[毕业周年] 又是今日   时间的标记,6月26日。  今年的简书,一如既往,记录这日子。  ...

  • 这样挺好

    2021-06-26 阴有阵雨 周六 “宝贝,大胆地游,不怕的,有爸爸在旁边保护着你!”宝贝六岁...

  • 模拟游戏环境与通用人工智能体演化的随想

    模拟游戏环境与通用人工智能体演化的随想 于 2021-06-26 于岳麓山下桃子湖畔,最早发布于QQ空间之日志。 ...

  • 人与人之间,也需要平衡

    日记849篇 2021-06-26 跷跷板,两边一样重,才能平衡。 管理者和员工之间,没有了平衡,员工会离职; 购...

  • #Dairy233 放纵

    2021-06-26 晴 周五 不小心睡到了十一点才起,结果还比DJ早起了。 没有继续写报告,队友因为打了疫苗人不...

  • #Dairy234 ?

    2021-06-26 周六 晴 出了趟门,去了超市采购一周的事物。 没有干什么正事,连看了四五集致命女人第二季。 ...

  • 【餐饮100问】27.为什么一干就废?

    Day238 2021-06-26 明明懂得了很多的道理,却依然过不好这一生。总是在学习的时候,一听就会,一干就废...

网友评论

      本文标题:2021-06-26图

      本文链接:https://www.haomeiwen.com/subject/xswzyltx.html