创作

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

数据结构与算法:图的遍历过程中,搜索方法的不同

city_prolove 来源:lp 2019-04-04 16:40 次阅读

1 引言

遍历是指从某个节点出发,按照一定的的搜索路线,依次访问对数据结构中的全部节点,且每个节点仅访问一次。

在二叉树基础中,介绍了对于树的遍历。树的遍历是指从根节点出发,按照一定的访问规则,依次访问树的每个节点信息。树的遍历过程,根据访问规则的不同主要分为四种遍历方式:

(1)先序遍历(2)中序遍历(3)后序遍历(4)层次遍历

类似的,图的遍历是指,从给定图中任意指定的顶点(称为初始点)出发,按照某种搜索方法沿着图的边访问图中的所有顶点,使每个顶点仅被访问一次,这个过程称为图的遍历。遍历过程中得到的顶点序列称为图遍历序列。

图的遍历过程中,根据搜索方法的不同,又可以划分为两种搜索策略:

(1)深度优先搜索(DFS,Depth First Search)(2)广度优先搜索(BFS,Breadth First Search)

2 深度优先搜索

2.1 算法思想

深度优先搜索思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点,然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。若此时尚有其他顶点未被访问到,则另选一个未被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问到为止。

2.2 算法特点

深度优先搜索是一个递归的过程。首先,选定一个出发点后进行遍历,如果有邻接的未被访问过的节点则继续前进。若不能继续前进,则回退一步再前进,若回退一步仍然不能前进,则连续回退至可以前进的位置为止。重复此过程,直到所有与选定点相通的所有顶点都被遍历。

深度优先搜索是递归过程,带有回退操作,因此需要使用栈存储访问的路径信息。当访问到的当前顶点没有可以前进的邻接顶点时,需要进行出栈操作,将当前位置回退至出栈元素位置。

2.3 图解过程

2.3.1 无向图深度优先搜索

以图2.3.1.1中所示无向图说明深度优先搜索遍历过程。

图2.3.1.1

(1)首先选取顶点A为起始点,输出A顶点信息,且将A入栈,并标记A为已访问顶点。

(2)A的邻接顶点有C、D、F,从中任意选取一个顶点前进。这里我们选取C顶点为前进位置顶点。输出C顶点信息,将C入栈,并标记C为已访问顶点。当前位置指向顶点C。

(3)顶点C的邻接顶点有A、D和B,此时A已经标记为已访问顶点,因此不能继续访问。从B或者D中选取一个顶点前进,这里我们选取B顶点为前进位置顶点。输出B顶点信息,将B入栈,标记B顶点为已访问顶点。当前位置指向顶点B。

(4)顶点B的邻接顶点只有C、E,C已被标记,不能继续访问,因此选取E为前进位置顶点,输出E顶点信息,将E入栈,标记E顶点,当前位置指向E。

(5)顶点E的邻接顶点均已被标记,此时无法继续前进,则需要进行回退。将当前位置回退至顶点B,回退的同时将E出栈。

(6)顶点B的邻接顶点也均被标记,需要继续回退,当前位置回退至C,回退同时将B出栈。

(7)顶点C可以前进的顶点位置为D,则输出D顶点信息,将D入栈,并标记D顶点。当前位置指向顶点D。

(8)顶点D没有前进的顶点位置,因此需要回退操作。将当前位置回退至顶点C,回退同时将D出栈。

(9)顶点C没有前进的顶点位置,继续回退,将当前位置回退至顶点A,回退同时将C出栈。

(10)顶点A前进的顶点位置为F,输出F顶点信息,将F入栈,并标记F。将当前位置指向顶点F。

(11)顶点F的前进顶点位置为G,输出G顶点信息,将G入栈,并标记G。将当前位置指向顶点G。

(12)顶点G没有前进顶点位置,回退至F。当前位置指向F,回退同时将G出栈。

(13)顶点F没有前进顶点位置,回退至A,当前位置指向A,回退同时将F出栈。

(14)顶点A没有前进顶点位置,继续回退,栈为空,则以A为起始的遍历结束。若图中仍有未被访问的顶点,则选取未访问的顶点为起始点,继续执行此过程。直至所有顶点均被访问。

(15)采用深度优先搜索遍历顺序为A->C->B->E->D->F->G。

2.3.2 有向图深度优先搜索

以图2.3.2.1中所示有向图说明深度优先搜索遍历过程。

图2.3.2.1 有向图

(1)以顶点A为起始点,输出A,将A入栈,并标记A。当前位置指向A。

(2)以A为尾的边只有1条,且边的头为顶点B,则前进位置为顶点B,输出B,将B入栈,标记B。当前位置指向B。

(3)顶点B可以前进的位置有C与F,选取F为前进位置,输出F,将F入栈,并标记F。当前位置指向F。

(4)顶点F的前进位置为G,输出G,将G入栈,并标记G。当前位置指向G。

(5)顶点G没有可以前进的位置,则回退至F,将F出栈。当前位置指向F。

(6)顶点F没有可以前进的位置,继续回退至B,将F出栈。当前位置指向B。

(7)顶点B可以前进位置为C和E,选取E,输出E,将E入栈,并标记E。当前位置指向E。

(8)顶点E的前进位置为D,输出D,将D入栈,并标记D。当前位置指向D。

(9)顶点D的前进位置为C,输出C,将C入栈,并标记C。当前位置指向C。

(10)顶点C没有前进位置,进行回退至D,回退同时将C出栈。

(11)继续执行此过程,直至栈为空,以A为起始点的遍历过程结束。若图中仍有未被访问的顶点,则选取未访问的顶点为起始点,继续执行此过程。直至所有顶点均被访问。

2.4 算法分析

当图采用邻接矩阵存储时,由于矩阵元素个数为n^2,因此时间复杂度就是O(n^2)。

当图采用邻接表存储时,邻接表中只是存储了边结点(e条边,无向图也只是2e个结点),加上表头结点为n(也就是顶点个数),因此时间复杂度为O(n+e)。

3 广度优先搜索

3.1 算法思想

广度优先搜索思想:从图中某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使得“先被访问的顶点的邻接点先于后被访问的顶点的邻接点被访问,直至图中所有已被访问的顶点的邻接点都被访问到。如果此时图中尚有顶点未被访问,则需要另选一个未曾被访问过的顶点作为新的起始点,重复上述过程,直至图中所有顶点都被访问到为止。

3.2 算法特点

广度优先搜索类似于树的层次遍历,是按照一种由近及远的方式访问图的顶点。在进行广度优先搜索时需要使用队列存储顶点信息。

3.3 图解过程

3.3.1 无向图的广度优先搜索

例如:图3.3.1.1所示的无向图,采用广度优先搜索过程。

图3.3.1.1

(1)选取A为起始点,输出A,A入队列,标记A,当前位置指向A。

(2)队列头为A,A出队列。A的邻接顶点有B、E,输出B和E,将B和E入队,并标记B、E。当前位置指向A。

(3)队列头为B,B出队列。B的邻接顶点有C、D,输出C、D,将C、D入队列,并标记C、D。当前位置指向B。

(4)队列头为E,E出队列。E的邻接顶点有D、F,但是D已经被标记,因此输出F,将F入队列,并标记F。当前位置指向E。

(5)队列头为C,C出队列。C的邻接顶点有B、D,但B、D均被标记。无元素入队列。当前位置指向C。

(6)队列头为D,D出队列。D的邻接顶点有B、C、E,但是B、C、E均被标记,无元素入队列。当前位置指向D。

(7)队列头为F,F出队列。F的邻接顶点有G、H,输出G、H,将G、H入队列,并标记G、H。当前位置指向F。

(8)队列头为G,G出队列。G的邻接顶点有F,但F已被标记,无元素入队列。当前位置指向G。

(9)队列头为H,H出队列。H的邻接顶点有F,但F已被标记,无元素入队列。当前位置指向H。

img

(10)队列空,则以A为起始点的遍历结束。若图中仍有未被访问的顶点,则选取未访问的顶点为起始点,继续执行此过程。直至所有顶点均被访问。

3.3.2 有向图的广度优先搜索

以图3.3.2.1所示的有向图为例进行广度优先搜索。

图3.3.2.1

(1)选取A为起始点,输出A,将A入队列,标记A。

(2)队列头为A,A出队列。以A为尾的边有两条,对应的头分别为B、C,则A的邻接顶点有B、C。输出B、C,将B、C入队列,并标记B、C。

(3)队列头为B,B出队列。B的邻接顶点为C,C已经被标记,因此无新元素入队列。

(4)队列头为C,C出队列。C的邻接顶点有E、F。输出E、F,将E、F入队列,并标记E、F。

(5)队列头为E,E出队列。E的邻接顶点有G、H。输出G、H,将G、H入队列,并标记G、H。

(6)队列头为F,F出队列。F无邻接顶点。

(7)队列头为G,G出队列。G无邻接顶点。

(8)队列头为H,H出队列。H邻接顶点为E,但是E已被标记,无新元素入队列。

(9)队列为空,以A为起始点的遍历过程结束,此时图中仍有D未被访问,则以D为起始点继续遍历。选取D为起始点,输出D,将D入队列,标记D。

(10)队列头为D,D出队列,D的邻接顶点为B,B已被标记,无新元素入队列。

(11)队列为空,且所有元素均被访问,广度优先搜索遍历过程结束。广度优先搜索的输出序列为:A->B->E->C->D->F->G->H。

3.4 算法分析

假设图有V个顶点,E条边,广度优先搜索算法需要搜索V个节点,时间消耗是O(V),在搜索过程中,又需要根据边来增加队列的长度,于是这里需要消耗O(E),总得来说,效率大约是O(V+E)。

4 总结

图的遍历主要就是这两种遍历思想,深度优先搜索使用递归方式,需要栈结构辅助实现。广度优先搜索需要使用队列结构辅助实现。在遍历过程中可以看出,对于连通图,从图的任意一个顶点开始深度或广度优先遍历一定可以访问图中的所有顶点,但对于非连通图,从图的任意一个顶点开始深度或广度优先遍历并不能访问图中的所有顶点。

  • 算法
    +关注

    关注

    22

    文章

    3463

    浏览量

    83467
  • 数据结构
    +关注

    关注

    3

    文章

    338

    浏览量

    38103
  • 二叉树
    +关注

    关注

    0

    文章

    43

    浏览量

    11064

原文标题:数据结构与算法:30张图弄懂“图的两种遍历方式”

文章出处:【微信号:rgznai100,微信公众号:AI科技大本营】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    2022鸿蒙开发者大赛正式开启

    2022年6月24日,鸿蒙开发者大赛正式开启报名,其下设Apps UP应用创新赛道自2020年以来已....
    的头像 话说科技 发表于 06-27 09:14 295次 阅读
    2022鸿蒙开发者大赛正式开启

    面对AI人才培养产学研鸿沟,昇腾AI如何做厚产业人才黑土地?

    在“新基建”全面推进,5G与AI技术掀起新一轮技术革命浪潮的今天,爆发的数据、算法、算力加速了许多产....
    的头像 脑极体 发表于 06-25 20:36 759次 阅读

    动力电池HPPC功率性能测试

    刘莎等对自制17Ah高功率锂离子动力电池的脉冲功率特性进行了研究[1],采用国内某城市简化工况和HP....
    的头像 锂电联盟会长 发表于 06-24 14:26 101次 阅读

    Linux系统下的安装与使用

    然而,开源并不意味着能用、好用。其实,AlphaFold2 软件系统的部署难度极大,并且对硬件的要求....
    的头像 OpenCV学堂 发表于 06-24 10:03 504次 阅读

    开源软件-LZ4无损压缩算法

    ./oschina_soft/lz4.zip
    发表于 06-23 15:21 10次 阅读
    开源软件-LZ4无损压缩算法

    rt-thread 驱动篇(八)hwtimer 重载算法优化

    区别于 rt-thread 内核实现的两种定时器,这种定时器依赖芯片内置的定时器外设,依靠稳定高速的....
    的头像 出出 发表于 06-23 10:10 1475次 阅读
    rt-thread 驱动篇(八)hwtimer 重载算法优化

    MegEngine(天元)深度学习框架

    ./oschina_soft/MegEngine.zip
    发表于 06-21 10:32 6次 阅读
    MegEngine(天元)深度学习框架

    xdelta差量更新算法

    ./oschina_soft/xdelta.zip
    发表于 06-21 09:30 9次 阅读
    xdelta差量更新算法

    开源算法体系构建高效繁荣的AI生态

    上海市经济和信息化委员会人工智能发展处副处长孙跃,ICPA智算联盟理事长、商汤科技联合创始人、集团副....
    的头像 商汤科技SenseTime 发表于 06-21 09:17 109次 阅读

    基于传统算法的OCR技术

    对于文字识别,实际中一般首先需要通过文字检测定位文字在图像中的区域,然后提取区域的序列特征,在此基础....
    的头像 新机器视觉 发表于 06-20 14:31 140次 阅读

    智能手环之技术应用:睡眠检测

    上表中的展示的传感器是目前智能手表中常见的传感器与功能,但是并非所有的智能手表中都内置了这些传感器,....
    的头像 通信工程师专辑 发表于 06-20 14:20 293次 阅读

    算法框架是AI芯片与商业应用的桥梁

    电子发烧友网报道(文/李弯弯)近些年AI模型的应用场景飞速扩展,包括自动驾驶、智慧城市、教育、医疗、....
    发表于 06-18 07:20 276次 阅读
    算法框架是AI芯片与商业应用的桥梁

    c语言实现一元线性回归

    第一:用所给样本求出两个相关变量的(算术)平均值 第二:分别计算分子和分母:(两个公式任选其一)分子....
    的头像 嵌入式应用开发 发表于 06-17 16:16 351次 阅读
    c语言实现一元线性回归

    DiskANN基于图的近似近邻搜索索引

    ./oschina_soft/DiskANN.zip
    发表于 06-17 11:38 18次 阅读
    DiskANN基于图的近似近邻搜索索引

    多种调制方式的相干解调算法和仿真代码

    自动增益控制(AGC)环路用来调节采样信号的功率,使得接收信号保持恒定平均功率。码定时恢复环路调节全....
    的头像 通信工程师专辑 发表于 06-17 10:59 173次 阅读

    嵌入式开发者都该了解的10大算法

    归并排序(Merge sort,台湾译作:合并排序)是建立在归并操作上的一种有效的排序算法。该算法是....
    的头像 FPGA之家 发表于 06-16 10:15 215次 阅读

    FPGA开源项目:小球追踪系统设计

    图像采集显示流程一般是:FPGA把摄像头采集图像数据缓存到SDRAM,再从SDRAM搬运到LCD驱动....
    的头像 FPGA之家 发表于 06-16 10:11 280次 阅读

    Assimp 3D模型导入库

    ./oschina_soft/assimp.zip
    发表于 06-16 09:53 13次 阅读
    Assimp 3D模型导入库

    从数据结构和算法解析OpenHarmony的事件机制

    近年来,国内开源实现跨越式发展,并成为企业提升创新能力、生产力、协作和透明度的关键。作为 OpenA....
    的头像 OpenAtom OpenHarmony 发表于 06-16 09:46 237次 阅读

    有趣的算法题热热身:灯泡开关

    通过上面的图例,我们可以很清楚地看到,每一轮都会切换一批灯泡。关键是可能切换到之前已经切换过的灯泡,....
    的头像 算法与数据结构 发表于 06-16 09:30 183次 阅读

    ADS2.0算法演进与对算力的新需求

    未来ADS算法会进入一个全新的2.0阶段,4D空间下基于时空的多模感知与融合推理, 也就是特征提取/....
    的头像 佐思汽车研究 发表于 06-14 11:13 238次 阅读

    LiteOS-M内核队列的关键数据结构及关键算法

    随着数字经济的发展,作为数字基础设施根技术的操作系统成为数字变革的关键力量,OpenAtom Ope....
    的头像 深开鸿 发表于 06-14 11:01 1613次 阅读

    一种优化的方法:记忆化搜索

    上面的做法可以得到最优解,但有一个问题。如下例,以15为起点的时候,会尝试把6->5->4->3->....
    的头像 算法与数据结构 发表于 06-14 10:21 195次 阅读

    无线射频识别信号监控算法的研究与实现

    无线射频识别技术作为一种新兴的识别技术,广泛地应用于军事及民用的各个 领域。它最大的特点就是无接触....
    发表于 06-13 15:15 27次 阅读

    FPGA与GPU架构的背景

    FPGA 可提供一种不同的 AI 优化的硬件方法。与 GPU 不同,FPGA 提供独特的精细化空间可....
    的头像 FPGA之家 发表于 06-13 09:58 215次 阅读

    介绍几个关于ISP算法架构的项目

    用python实现的ISP架构,整体项目架构不如OpenISP,但是有几个算法是OpenISP没有的....
    的头像 OpenFPGA 发表于 06-13 09:39 230次 阅读

    C/C++基础知识汇总

    这是一篇五万字的C/C++知识点总结,包括答案。
    的头像 Linux爱好者 发表于 06-12 15:10 402次 阅读

    基于Xilinx KV26的立体视觉匹配方案

    深度估算是自动驾驶领域的一项关键技术。作为自动驾驶中最常用的传感器,摄像头能够获取全面、丰富又密集的....
    的头像 新机器视觉 发表于 06-10 10:37 3531次 阅读

    数字PID温控器7参数辨识和扰动抑制

    扩展阿斯特罗姆(Astrom Karl Johan)的继电反馈法在温控器中的应用,把最初仅辨识PID....
    发表于 06-06 16:45 108次 阅读

    btcrobot BTC/LTC自动化算法交易引擎

    btcrobot.zip
    发表于 06-06 16:17 37次 阅读
    btcrobot BTC/LTC自动化算法交易引擎

    Gryphon加密货币交易框架

    gryphon.zip
    发表于 06-06 15:31 16次 阅读
    Gryphon加密货币交易框架

    Primecoin加密货币

    primecoin.zip
    发表于 06-06 14:59 14次 阅读
    Primecoin加密货币

    K-MEANS聚类算法概述及工作原理

    K-means 是一种聚类算法,且对于数据科学家而言,是简单且热门的无监督式机器学习(ML)算法之一....
    的头像 NVIDIA英伟达 发表于 06-06 11:53 347次 阅读

    新晋图像生成王者扩散模型

    他们确定了最佳的时间离散化(time discretization),对采样过程应用了更高阶的Run....
    的头像 OpenCV学堂 发表于 06-06 10:54 200次 阅读

    几个视频/图像处理的项目分享

    F-I-L是一个FPGA平台的开源的图像处理库,已经拥有了许多常用操作,并在不断更新中。这些操作被以....
    的头像 OpenFPGA 发表于 06-06 09:29 237次 阅读

    贪心算法:分发饼干

    对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,....
    的头像 算法与数据结构 发表于 06-06 09:25 274次 阅读

    机器学习算法的介绍

    哲学要回答的基本问题是从哪里来、我是谁、到哪里去,寻找答案的过程或许可以借鉴机器学习的套路:组织数据....
    的头像 新机器视觉 发表于 06-05 14:17 251次 阅读

    如何使用xilinx的HLS工具进行算法的硬件加速

    在整个流程中,用户先创建一个设计 C、C++ 或 SystemC 源代码,以及一个C的测试平台。通过....
    的头像 FPGA之家 发表于 06-02 09:48 313次 阅读

    基于Adaboost人脸检测

    人脸识别系统的主要要求是期望高质量的人脸图像,而质量好的图像则在期望条件下被采集。图像质量对于提取图....
    的头像 新机器视觉 发表于 06-01 14:12 259次 阅读

    基于Xilinx KV26的立体视觉匹配方案

    深度估算是自动驾驶领域的一项关键技术。作为自动驾驶中最常用的传感器,摄像头能够获取全面、丰富又密集的....
    的头像 XILINX开发者社区 发表于 06-01 09:36 1122次 阅读

    捕捉一致的颜色

    挑战:无论是分捡水果和蔬菜还是检查运动鞋,在保证可靠性的前提下高速捕获准确的色彩和丰富的细节都要求相....
    的头像 21克888 发表于 05-27 14:50 1078次 阅读
    捕捉一致的颜色

    一文详解限流算法的实现方式

    不依赖外部库的情况下,限流算法有什么实现的思路?本文介绍了3种实现限流的方式。
    的头像 马哥Linux运维 发表于 05-25 12:00 348次 阅读

    基于FPGA的视频图像拼接融合

    视频流的每个单独帧将具有对应于红色、绿色和蓝色的三个通道。视频帧中的颜色信息不会增强特征检测。此外,....
    的头像 OpenFPGA 发表于 05-25 10:20 1410次 阅读
    基于FPGA的视频图像拼接融合

    基于non-OS和RT-Thread的按键库源码及应用

    核心的按键扫描代码仅有三行,没错,就是经典的 三行按键扫描算法。使用 C 语言标准库 API 编写,....
    的头像 硬件攻城狮 发表于 05-23 09:39 515次 阅读
    基于non-OS和RT-Thread的按键库源码及应用

    深入理解Linux内核中的算法和数据结构

    由于需要在内核中进行代码测试验证,完整编译安装内核比较耗时耗力。准备采用module形式来验证。
    发表于 05-18 20:13 528次 阅读
    深入理解Linux内核中的算法和数据结构

    模型调优和复现算法遇到的一些坑

    更方便深入的理解算法的具体细节,比如可能代码在文章没有提到的某些层上偷摸的加了一个shift操作,比....
    的头像 新机器视觉 发表于 05-18 15:03 316次 阅读

    如何对xilinx FPGA进行bit文件加密

    AES即高级加密标准,是一种区块加密,当然也是对称加密。区块固定为128bit,秘钥为128,192....
    的头像 FPGA设计论坛 发表于 05-17 09:36 391次 阅读

    块设备层的数据结构 page/request和bio的关系

    主要内容:从应用程序发起一次IO行为,最终怎么到磁盘,以及在这个路径上有什么trace的方法和 配置....
    发表于 05-16 09:23 246次 阅读
    块设备层的数据结构 page/request和bio的关系

    盘点几种常见的数据结构

    这里主要总结下在工作中常碰到的几种数据结构:Array,ArrayList,List,LinkedL....
    的头像 Linux内核补给站 发表于 05-13 15:58 3946次 阅读
    盘点几种常见的数据结构

    嵌入式软件详细设计

    该文档在概要设计的基础上,进一步的细化系统结构,展示了软件结构的图标,物理设计、数据结构设计、及算法....
    的头像 硬件攻城狮 发表于 05-13 14:23 311次 阅读

    机器学习简介与经典机器学习算法人才培养

    上课时间安排: 2022年05月27日 — 2022年05月30日 No.1 第一天 一、机器学习简介与经典机器学习算法介绍 什么是机器学习...
    发表于 04-28 18:56 4627次 阅读

    程序语言的奥妙 算法最好的入门书

    一本很不错的编程基础书籍,算法最好的入门书,有需要的可以下载 ...
    发表于 04-24 10:24 6751次 阅读

    RT-Thread基于优先级的全抢占式调度算法的实现

    一、原理概述 RT-Thread 是一款嵌入式实时操作系统(RTOS),同时也是一款优秀的物联网操作系统,相对于裸机的轮询调度算...
    发表于 04-20 14:17 1358次 阅读

    关于RT-Thread的动态内存堆管理简析

    内存堆管理机制 RT-Thread 操作系统在内存管理上,根据上层应用及系统资源的不同,有针对性地提供了不同的内存分配管理算法。...
    发表于 04-06 17:11 2464次 阅读

    openHarmony IPC数据调用的过程分享

    1.前情概览 我们在前片博客中讲述了 proxy - stub 架构的一般编程范式,这篇文章关注驱动自身的数据传输,做一次完整的数据分析...
    发表于 03-30 09:26 1398次 阅读

    RV1109优势和特点是什么?有哪些应用?

    RV1109优势和特点是什么?有哪些应用?
    发表于 03-10 06:45 1354次 阅读

    0.96寸OLED画圆形算法思路分享

    代码 这个算法是纯原创,没有任何借鉴的元素实现原理大概就是通过两个点算出直线方程然后描点在这个函数中OLED_DrawDot函数...
    发表于 03-01 06:27 779次 阅读

    卡尔曼滤波简介

    在这里我就不介绍卡尔曼的数学推算了,网上的数学推导一抓一大把,如果想了解推导过程的小伙伴可以去大佬的博客。如果你是想直接...
    发表于 02-28 14:24 749次 阅读

    线程池是如何实现的

    线程池的概念是什么?线程池是如何实现的?
    发表于 02-28 06:20 523次 阅读

    如何利用互相关算法求时延差的C语言算法呢

    如何利用互相关算法测出音源与麦克风距离的差值呢? 如何利用互相关算法求时延差的C语言算法呢? ...
    发表于 02-25 06:38 927次 阅读