
算法与数据结构
文章平均质量分 94
参考《算法导论》《算法图解》《大话数据结构》,转换为自己的理解,以及进行一些必要的动手操作,毕竟实践是检验真理的唯一标准!
非晚非晚
一往无前,不急不躁,生命不熄,折腾不止!
展开
-
卡尔曼滤波的理解
卡尔曼滤波(Kalman filtering)是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。简单来说,卡尔曼滤波器是一个“optimal recursive data processing algorithm(最优化自回归数据处理算法)”原创 2022-02-24 16:50:04 · 7109 阅读 · 1 评论 -
七大查找算法的理解与实现
查找是在给定的数据中,寻找特定所需的元素,在计算机应用中,查找是常用的基本运算。在数据结构与算法中,查找也是必须要掌握的基本技能。本文将介绍7类基本的查找算法,希望对掌握这一基本技能有所帮助。原创 2021-05-10 23:29:17 · 3179 阅读 · 5 评论 -
八大经典排序算法的理解、动图演示和C++方法实现
所谓排序,就是使一串序列,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。掌握基本排序方法是算法入门的必备基础知识。这里将要介绍八种经典排序算法,希望这篇文章帮助我们对排序算法有一个全面理解。...原创 2021-05-08 11:11:55 · 16095 阅读 · 62 评论 -
【算法】路径规划中的Dijkstra(狄克斯特拉)与A星算法
Dijkstra算法是求单源最短路径问题的算法,使用它可以求得从起点到终点的路径中权重总和最小的那条路径。Dijkstra的主要特点是以起始点为中心向外层层拓展(广度优先搜索思想),直到拓展到终点为止。单源:从一个顶点出发,Dijkstra算法只能求一个顶点到其他点的最短距离而不能任意两点。现在我们假设有下列的一副图,求起始点A到终点G的最短路径。其中边上面的数据表示权重,从起始点A开始,A的顶点值为0,其他顶点为无穷大(∞)。 寻找可以从原创 2021-02-19 16:35:28 · 14766 阅读 · 3 评论 -
【数据结构】八种常见数据结构介绍
数据结构是计算机存储、组织数据的方式。一种好的数据结构可以带来更高的运行或者存储效率。数据在内存中是呈线性排列的,但是我们可以使用指针等道具,构造出类似“树形”的复杂结构。下面介绍八个常见的数据结构。原创 2021-02-05 16:10:36 · 65875 阅读 · 3 评论 -
【算法】算法简介
文章目录1. 定义2. 时间复杂度常数阶O(1)线性阶O(n)对数阶O(logN)线性对数阶O(nlogN)平方阶O(n²)3. 空间复杂度空间复杂度O(1)空间复杂度O(n)1. 定义算法(Algorithm):是指用来操作数据、解决程序问题的一组方法。对一定规范的输入,在有限的时间内获得所要求的输出。一个算法的优劣可以用空间复杂度和时间复杂度来衡量。2. 时间复杂度按照常理来说,一个算法的时间复杂度用程序的一次执行时间来表示,这种方式有以下弊端。容易受运行环境(不同测试机器)的影响;对测原创 2020-12-21 21:12:14 · 1755 阅读 · 0 评论