自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++配置matio第三方库详细教程

本文详细介绍了在Windows11环境下配置CMake、编译zlib和matio库的完整过程。主要内容包括:1)安装CMake工具并配置环境;2)下载并编译zlib库,使用CMake生成VS2022项目;3)安装HDF5库;4)编译matio库并配置相关路径;5)提供测试代码示例,展示如何创建和读写.mat文件;6)说明项目配置方法,包括链接器设置和库文件路径添加。最后通过测试代码验证了matio库的正确配置,成功实现了MAT文件的数据读写功能。整个过程涵盖了从环境搭建到实际应用的完整开发流程。

2025-12-13 18:02:13 810

原创 机器学习-手写朴素贝叶斯分类器,附代码详细讲解(C++/Python实现)

本文介绍了朴素贝叶斯分类器的原理与实现。首先阐述了贝叶斯公式的核心概念,包括先验概率、后验概率。针对实际应用中的数值溢出问题,提出了对数变换的解决方案;还有概率为0的过拟合问题,提供了拉普拉斯修正的解决方案。还讲解了离散特征和连续特征的概率计算方法,并以西瓜数据集为例进行案例分析。最后给出了C++和Python两种实现方案,都考虑了防溢出处理和拉普拉斯修正,展示了朴素贝叶斯分类器的完整实现过程。

2025-12-10 02:43:02 715

原创 机器学习-决策树剪枝处理(C++/Python实现)

本文介绍了决策树剪枝技术,重点分析了预剪枝和后剪枝两类方法。预剪枝包括限制树深度、基于验证集的早停法和信息增益阈值法,在树生成时同步处理;后剪枝则以错误率降低剪枝为代表,在树生成后进行优化。文章对比了两类方法的优缺点:预剪枝效率高但易欠拟合,后剪枝泛化能力强但计算量大。同时提供了C++和Python两种实现方案,核心思路都是通过比较剪枝前后的准确率来决定是否保留子树。实现中采用递归遍历和掩码技术优化性能,虽然最终的效果没法展示出来,但是为模型泛化提供了实用方法。

2025-12-02 22:31:01 1148 1

原创 机器学习-决策树多种生成方法及实战代码详细讲解(C++/Python实现)

本文系统介绍了决策树算法的原理、代码实现。首先阐述了决策树的概念及其在分类问题中的应用,重点分析了三种核心算法:ID3(信息增益)、C4.5(信息增益率)和CART(基尼系数),比较了它们的优缺点及适用场景。随后详细讲解了C++和Python的具体实现过程,包括数据结构设计、核心算法实现和可视化方法。文章最后展示了决策树模型在测试集上的评估结果,准确率达到较高水平,同时指出过拟合问题和剪枝优化的必要性。通过完整的理论讲解与代码实践,为读者提供了决策树算法的全面指导。

2025-11-17 22:09:53 905 2

原创 机器学习-KNN算法原理、实战(含模型评估可视化)详细讲解(C++/Python两种语言实现)

本文介绍了KNN算法的原理、优缺点及实现方法。KNN是一种基于距离度量的监督学习算法,通过计算待测样本与已知样本的欧几里得距离,选择最近的k个邻居进行预测。文章还详细讲解了数据预处理(归一化、洗牌)、最佳k值选择(网格搜索+交叉验证)以及评估指标(ROC曲线、AUC值)。分别使用C++(Matplot++可视化)和Python(NumPy+Matplotlib)实现约会网站推荐系统,并对比了两种语言在机器学习任务中的适用性。C++版本侧重算法底层实现,Python版本则更简洁高效。

2025-10-28 13:36:57 821

原创 Anaconda下载及使用详细教程

本文介绍了如何安装Anaconda,其中解释了Anaconda是什么,与Miniconda的区别,还有如何添加环境变量,添加的环境变量有什么用,还有如何使用Anaconda,并提供了对应的指令。全篇图文并茂,适合初学者,特别是只懂得跟着教程做但不知道为什么这么做的读者。

2025-09-19 21:37:51 1726

原创 PTA-查找-AVL 树的根

本文是数据结构的编程题的题解和解析,提供了两种不同的方式实现左右旋的算法,详细讲解每一步的意义和作用,同时配了一些图片方便理解

2025-05-29 21:41:01 1156

原创 PTA-图-旅游规划

本文是编程题的题解和代码解析,使用Dijkstra(迪杰斯特拉)算法解决问题,采用邻接表的数据结构实现代码,同时本文除了提供题解外,还提出了不针对题目的改进方案,通过记录父节点信息来输出具体路径,增强程序的实用性

2025-05-15 20:21:40 980

原创 PTA-树-朋友圈

实现逻辑是,将朋友的位置传入,作为子节点,找对应的父节点,如果朋友的朋友节点不是这个朋友的父节点(即这个节点不是自己的父节点),那么就继续找朋友的朋友的朋友,直到找到父节点,返回这个父节点对应的位置。遍历每一个人,如果一个朋友圈中心是另一个朋友圈中心的一部分,就是在建立朋友圈时可能出现没有全部更新的情况,如最后一行输入时表明1和5是朋友,1是1、2、3、4的中心,5是5、6、7的中心,这样只更新了5的父节点,而6、7的父节点还是5(更新需要修改arr数组,如果没有访问6、7,6和7是不会自动更新的)。

2025-04-24 23:57:48 1088

原创 C++的模板详细讲解

C++除了类与对象的思想外,还有泛型编程的思想,其本质是复用,利用一个虚拟的类型先代替可能传入的变量的类型,编译器再通过确定传入的类型编译函数,来减少代码量。函数模板和类模板,下面依次来讲解这两种模板。STL是C++的精华,而STL的核心是类与对象以及泛型编程,学习了这两部分内容对STL的理解可以更加深刻。使用VS2022先看函数的定义,这里需要关键字template以及<>,再使用class关键字或者typename关键字(这两个关键字没差别)跟上一个虚拟类型的参数名,

2025-04-22 21:33:27 742

原创 ROS action(动作)通信详细讲解

本文讲解了ROS动作通信,并附上了案例的C++和python实现,以及通过ROS内置的命令模拟客户端对我们实现的服务器端进行测试

2025-02-15 12:36:22 2545

原创 ROS服务通信详细讲解

本文详细讲解了服务通信,并完成了案例的C++和python实现,也讲解了如何单独运行测试服务器端,同样是干货满满

2025-02-13 00:58:50 1548

原创 ROS话题通信详细讲解(附上案例实现并详细解析各种涉及到的概念和逐个语句的效果,还有讲解不同版本的ROS实现的差异)

本文详细讲解了ROS中的话题通信,并附上案例的C++和python实现,在ubuntu18.04和ubuntu22.04中均有尝试实现,也发现了一些差异。同时,学习本文内容,能更快地上手ROS,以及学会使用ROS需要的命令

2025-02-10 15:49:32 1700 1

原创 安装测试ROS,安装一些ROS的辅助软件(含一些错误及解决方法)

本文详细讲解ROS在ubuntu18.04和ubuntu22.04的安装过程,还有优化ROSMelodic版本使用,测试ROS是否安装完整;另外,本文还推荐了一些ROS的辅助软件。总之,阅读本文对初学者有很大的帮助

2025-02-07 22:42:03 1271

原创 安装Ubuntu及其优化使用

虚拟机使得同一台电脑上可以运行多个系统,为我们提供便利,方便学习。由于ROS的历史版本不支持 windows(即比较主流的操作系统),在Ubuntu上学习ROS是必要的。小编知道的虚拟机软件有virtualbox和VMware,由于小编先用了VMware,所以不费工夫换虚拟机了。

2025-02-05 22:57:36 2870

原创 C++的类与对象详细讲解

类在C++中用class这个关键字来定义。访问权限属性和行为。访问权限,顾名思义,决定了能否访问类中的一些变量和函数,和C语言中的指针有重合也有不同,C语言的指针通过类型的不同,使得访问的地址内容有所区别。在C++中,访问权限由几个关键字决定。属性,你可以想象一个苹果有颜色、重量、体积等等,这些就是它的属性。在C++中,属性用变量来表示。行为,每个事物都有一些行为,比如人,会走路、会吃饭。在C++中,行为由函数实现。//访问权限public://属性int num;//行为。

2024-12-13 16:37:01 1812 1

空空如也

空空如也

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

TA关注的人

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