自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 离职时领导的人情世故

表示震惊,但是理解,适度挽留,浅浅祝福。——《二十不惑》

2022-09-28 15:56:02 155 1

原创 对于扩展动态目标的目标级融合

扩展动态目标的目标级融合摘要一、简介二、文献综述1.引入库三、目标建模A. 边界框角点模型(The Bounding Box Corner Model)总结本文是对文章《Object Level Fusion of Extended Dynamic Objects1》的翻译。字面级翻译,仿冒必究,不喜勿喷。摘要本文提出了一种基于多源传感器扩展目标的泛化跟踪方法。每个输入传感器的专业信息都映射成了简单的模型参数,允许融合中心使用传感器的通用信息(融合中心指什么?)。本文给出了模型类型和参数,用一

2022-04-26 00:02:15 3525

原创 【ubuntu离线安装VScode并运行调试】

文章目录前言1. VS安装2. 安装扩展包2.1 安装cpp编译工具总结前言作为正宗的程序媛,一个好用的IDE会让代码调试事半功倍。目前在我心里有两大IDE:clion和VisualStudio。如果是个人电脑,那么看个人喜好,二者都挺好的。clion记得要破解版。如果是公司电脑,而且公司有钱的话,一般会买clion的license。好像每年要299刀。如果是公司电脑,而且公司一般会限制电脑的网关,很难上网。那么这篇文章就派上用场了。1. VS安装第一步就是去VS官网下载安装包。官网-

2022-04-25 14:14:20 4533

原创 问题:clion编译target was not found

问题描述在编译工程时,colcon build编译正常,且编译程序能正常运行。为了方便调试,想要在clion里编译,却提示:target "xxx" was linked to "std_msgs::std_msgs__rosidl_typesupport_cpp" but the target was not found.原因分析:标准库std_msgs找不到。首先确定std_msgs已经安装成功,因为colcon build能够编译成功。然后不要慌,应该是clion的使用上有问题。解

2022-04-12 15:09:40 2837

原创 问题ros: no module named ‘rclpy‘

项目场景:工作站上同时存在ros1和ros2.ros1是基于neotic版本,ros2是基于galactic版本。因此需要经常切换版本。问题描述运行python脚本时总是提示:no module named 'rclpy'尝试方案一:安装rclpy。pip install rclpy甚至尝试换国内的各种源,甚至添加–trusted,都无效,统一提示:ERROR: Could not find a version that satisfies the requirement rclpy

2022-04-11 15:43:35 7514 7

原创 关于ros2安装的那些坑

关于ros2安装前言一、ros2安装1. Set Locale2. Setup Sources3. Install ROS2 Package4. Environment Setup5. Try Some Examples二、创建第一个ROS2包1. 创建ROS2包2. colcon: command not found总结前言为什么要使用ros2?对于这个问题,ros官网以及各大网络平台给出了很多答案,至于其真实性以及有效性,本人没有认真比对过。暂且贴图,至少ros2在实时性上是更胜一筹的。截图来

2022-04-10 23:17:39 10698

原创 排序算法(五)——快速排序

排序算法(五)简介1. 基本快速排序2. 快速排序优化总结简介排序算法总共可分为四类:序号排序名称基础算法优化算法1插入排序直接插入排序希尔排序2选择排序简单选择排序堆排序3交换排序冒泡排序快速排序4归并排序归并排序归并排序快速排序其实是对冒泡排序的优化。提示:下附代码,亲测可用1. 基本快速排序快速排序基于递归。基本步骤主要包括:选定基准点,将小于基准点的数据放于左边,大于基准点的数据放于右边。分别对基准点左边

2022-04-05 20:10:22 1340

原创 排序算法(四)——归并排序

排序算法(四)简介递归归并排序迭代归并排序总结简介什么是归并排序?归并排序就是将有n个记录的数据看做n个子序列,两个两个进行排序,然后合并,如此往复,直到形成n个记录的有序序列。这叫做2路归并排序。归并排序和希尔排序?归并排序将每次进行比较的子序列长度从1逐渐增加到n/2附近;希尔排序将每次进行比较的子序列长度从n/3+1逐渐降低到1.二者的算法复杂度都是O(nlogn)。具体来说,前者为O(nlog2n),后者为O(nlog3n).提示:以下是本篇文章正文内容,下面案例可供

2022-04-03 16:25:23 699

原创 排序算法(三)——堆排序

排序算法(三)简介代码简介堆排序是什么?像上篇的希尔排序是对直接插入排序算法的优化,堆排序是对选择排序的优化。因此其基本思想就是每次循环获取未被排序过数据中的最大值(或者最小值)。考虑到选择排序每次选出n个数据中的最值需要计算n-1次,因此堆排序的主要优化点就在于此。堆排序的复杂度为O(nlog2n)。堆排序的基本步骤?首先从下向上构造大顶堆(或者小顶堆),即根节点元素总是大于(或者小于)其孩子节点的树结构;此时的根节点即为最大(最小)元素,将最值元素(第1个元素)与第i个元素交

2022-04-01 23:02:04 231

原创 排序算法(二)——插入排序和希尔排序

排序算法(二)简介1. 直接插入排序2. 希尔排序总结简介本篇主要介绍两种排序方法:直接插入排序和希尔排序。直接插入排序:将记录直接插入到已经排好序的有序表中,从而得到一个新的记录数加1的有序表。希尔排序:缩小增量排序,一般与直接插入排序配合使用(当然用其他排序方法与希尔排序配合也是可以的),是直接插入排序的高效版本。提示:下附代码,亲测可用1. 直接插入排序#include <iostream>using namespace std;void InsertSort(int

2022-03-30 14:48:48 1083

原创 排序算法(一)——冒泡排序和选择排序

文章目录简介1. 冒泡排序1.1 简单的冒泡排序1.2 正宗的冒泡排序2. 选择排序总结简介排序算法就是根据关键字将数据(也叫记录)进行排序的过程。稳定的排序算法:若记录1和记录2的关键字k1 == k2,在排序之前记录1就排在记录2前面。排序之后记录1仍然排在记录2前面,则这种排序算法稳定。1. 冒泡排序冒泡排序的基本原理是将两两相邻记录进行对比,若反序则交换,直到没有反序的相邻记录为止。1.1 简单的冒泡排序#include <iostream>using namespa

2022-03-28 22:20:13 283

原创 动态查找(三)——哈希表

文章目录简介代码简介前面几篇文章分别介绍了静态查找,包含顺序查找和有序查找;还介绍了动态查找的一部分,包含二叉排序树和平衡二叉树。其实在树结构中的动态查找里,还包含红黑树(C++ STL中的map set就是基于红黑树实现的)、多态查找树即B树(多用于数据库查找和IO系统,可减少索引次数)。树结构的动态查找,其优势在于可以输出有序数据。而哈希查找的优势在于,能够快速检索。什么是哈希表?数据元素即关键字和存放关键字的地址之间存在一定的函数关系:关键字地址 = f(关键字),这叫做哈希函数。通过

2022-03-23 12:52:48 959

原创 动态查找(二)——平衡二叉树

文章目录简介代码简介平衡二叉树又叫做AVL树,是以AV和L两人的名字命名的。什么是平衡二叉树?除非它是一棵空树,不然它的左子树和右子树都是平衡二叉树,且左子树深度与右子树深度绝对值之差不超过1.平衡二叉树比普通二叉平衡树的优势?考虑极端情况,有序数组存储形成的二叉排序树,查找尾部数据时,查找次数较多。平衡二叉树在索引过程中可以有效避免此情况,可以快速索引。平衡二叉树的劣势?需要额外的内存空间来存储结点深度信息;每次插入数据时都需检查平衡状态,并对不平衡状态做左旋/右旋处理。总的来说,

2022-03-21 00:03:55 833

原创 动态查找(一)——二叉排序树

文章目录1. 简介2. 代码1. 简介二叉排序树其实是一种挺成熟的数据结构了。其精妙之处在于实现搜索、插入、删除的手法。另外通过中序遍历,可以实现从小到大的数据排序。重点关注一下删除操作,假定要删除的元素为T,分情况讨论:T为NULL,返回false;T无左/右子树,则只需把T删掉;T既有左子树又有右子树:3.1 T的左子树仅有左子树,则只需删掉T;3.2 T的左子树s存在右子树,则将T的值替换为最大右子树的值,然后将最大右子树的左子树赋值给右子树上一阶的右子树。其他不做赘述,理

2022-03-19 23:19:53 655

原创 静态查找算法

文章目录简介一、顺序查找二、使用步骤1.引入库2.读入数据总结简介查找算法可分为静态查找和动态查找。静态查找指的是在查找过程中不需要对数据进行增删操作;动态查找指的是在查找过程中可以对数据进行增删操作。静态查找算法又可根据数据是否有序分为顺序查找和有序查找。顺序查找指的是数据无序即沿着数据分布挨个比对;有序查找方法有二分查找(折半查找)、插值查找、斐波那契查找。此外,还可通过对数据附加属性来实现线性索引查找,有稠密查找,即每个数据对应一个索引,通过查找索引实现数据查找;还有分区索引,顾

2022-03-18 22:47:14 1450

原创 关键路径和拓扑排序

文章目录简介几个问题:1. 拓扑排序2. 关键路径简介几个问题:关键路径和拓扑排序求什么?求关键路径。拓扑排序是求关键路径中的一环。关键路径是什么?举例来说,比如在造车过程中有如下的活动,那么哪条路径是关键路径呢?就是在所有路径中耗时最长的那条:开始——发动机完成——集中——组装完成,这条路径。如何判断是关键路径?ete == lte的活动为关键活动,其形成的路径为关键路径。提示:下附代码,亲测可用1. 拓扑排序拓扑排序就是对所有节点进行排序,保证节点的连接顺

2022-03-17 18:03:40 418

原创 最短路径——Dijkstra和Floyd算法

文章目录简介1. Dijkstra算法2. Floyd算法简介求最短路径的目的不必多说。通过设置权值,可以获取图中使用时间最短路径、途经路程最短路径等。求最短路径的两种算法:迪杰斯特拉算法 DIjkstra弗洛伊德算法 Floyd二者的主要区别在于:Dijkstra仅求解一个顶点到其余顶点的最短路径;Floyd求解所有顶点到其余顶点的最短路径。Dijistra的复杂度为O(n2),Floyd的复杂度为O(n3),但Floyd算法简洁优美,非常好看。提示:下附代码,亲测可用1. D

2022-03-14 23:02:05 1037

原创 最小生成树——Prim和Kruskal算法

文章目录简介1. Prim算法2. Kruskal算法总结简介求最小生成树的目的:最常见的便是,在多个途经点中计划出一条最快捷的路线。求最小生成树的两种算法:普利姆算法 Prim克鲁斯卡尔算法 Kruskal二者主要区别在于:Prim通过遍历图的顶点来寻找最小生成树;Kruskal通过遍历边来寻找。因此Prim的优势在于遍历稠密图,即点少边多的情况;Kruskal的优势在于遍历稀疏图,即边少点多的情况。提示:下附算法代码,亲测可用1. Prim算法Prim基于贪心算法,遍历各

2022-03-13 18:26:19 1962

原创 【DFS and BFS】

DFS: Depth First Search 深度优先搜索BFS: Breadth First Search 广度优先搜索

2022-02-26 22:54:57 166

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除