自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

suren_jun的博客

平平无奇

  • 博客(57)
  • 收藏
  • 关注

原创 explicit关键字

尽量使用explicit关键字。通过=让你的类进行隐式类型转化,可以是有参构造,也可以是拷贝构造。但是这种隐式转换在某些时候会出现问题。如果我在写一个这样的函数,运行fun(name),你觉得函数会报错吗?老规矩,有用二连,支持一下。那么什么是隐式转换呢?

2023-05-07 14:04:25 278 1

原创 OpenCV基础入门

图像是人类视觉的基础,是自然景物的客观反映。模拟图像通过某种物理量的强弱变化来记录图像信息,所以是连续变换的。因为模拟信号容易受到干扰,如今已经被数字图像全面替代数字图像,其亮度用离散的数值表示位数:0~255灰度图,其中0,代表最黑,255,表示最白图像分类二值图像:由0和1组成的二值图像灰度图:采用像素8位的非线性尺度来保存,有256级灰度,如果16位,则65536级灰度彩色图:通常采用RGB三个分量表示,分别介于(0~255),采用8位无符号整形。

2022-12-22 19:51:25 1714

原创 设计模式之单例模式(C++)

这个操作过程其实是非原子操作的,也就是说,在这过程中,CPU可能会发生重排序的情况。,这个接口可能会被调用多次,所以应该判空语句内部加锁,那么可能同时多个线程运行到判空语句,所以在互斥区的第一句中还需要判空检查一次,这就是。对于单例类的实例来讲,有时候必须要将当前实例释放掉,比如关闭文件,释放外部资源。只有一个实例的情况下,向整个系统提供这个实例,那么这个实例是必属于这个类的,所以这个实例是。显而易见,懒汉式的实例初始化在第一次调用获得类实例接口时,不调用则不初始化,比较懒。

2022-12-11 16:15:42 346

原创 C++虚函数和纯虚函数

定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了定义一个函数为纯虚函数,才代表函数没有被实现。定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。

2022-12-10 16:06:18 631

原创 流媒体行业的技术检索

流媒体服务器就是处理流媒体文件的服务器。流媒体服务器用在远程教育,视频点播、网络电台、网络视频等方面。直播过程中就需要使用流媒体服务器,一个完整的直播过程,包括采集、处理、编码、封包、推流、传输、转码、分发、解码、播放等过程,流媒体服务器主要负责采集,传输和播放等过程。流媒体指以流方式在网络中传送音频、视频和多媒体文件的媒体形式。相对于下载后观看的网络播放形式而言,流媒体的典型特征是把连续的音频和视频信息压缩后放到网络服务器上,用户边下载边观看,而不必等待整个文件下载完毕。

2022-12-09 22:20:44 527

原创 opencv+vs studio环境配置

首先将opencv_ffmpeg342_64.dll放入到windows\system32中,将opencv_world342.dll和opencv_world342d.dll放到windows\syswow64文件夹中。然后移动依赖文件,这里有三个文件,opencv_ffmpeg342_64.dll和opencv_world342.dll以及opencv_world342d.dll。最后就是配置的opencv的系统位数要和vs开始的项目一致。在VC++目录中,包含目录和库目录包含opencv 的库。

2022-11-02 20:58:09 738

原创 Notion的安装与使用

Tags: 软件最近了解到一个新的工具,叫做Notion。那么Notion 是什么?一句话理解:把丰富的表达能力组装成 Block,供不会编程能力的人,使用 Notion 在画布上编程,以解决自己的问题。听起来是不是很懵?没错我最开始也很懵,我最开始对他的定义就是,一个和typora一样记笔记的软件,至少Notion是可以记笔记的,但是当我下载下来之后,我发现,两者完全是两个极端!!!

2022-11-01 14:25:19 13680

原创 C++中++i比i++要快吗?

最近准备攻陷力扣,当然也才刚刚开始,准备每50题做一个思想小结。但是最近在做的过程中,发现了一个问题,那就是官方题解常常给的for循环都是++i ,包括其他人的题解,同样用的++i,这里我就很疑惑,难道++i比i++要快吗,不然两种写法我应该在题解中都会看到,但是我看到的几乎都是++i,那么很明显,有问题!废话不多说,直接开始上干货。

2022-10-30 09:50:03 789 2

原创 WireShark4.0(win10安装教程)

wireshark作为一款开源的网络安全软件,不同的人有不同的用法,网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查咨询安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark来学习网络协定的相关知识。产生内容的修改,它只会反映出流通的封包资讯。一路默认勾选,直到安装路径,最好选择之前相同的安装路径,便于管理。然后一路next,直到完成显示如下界面,点击同意,下一步。安装完成之后点击close,等待wireshark的安装。

2022-10-29 12:46:00 4570

原创 C++数据结构之字符串

这里是C++数据结构的字符串,主要是对字符串的一个总结,以及一些基础操作,还详细讲解了单字符串匹配和多模式匹配算法,详情可以跳转链接进入。废话说到这里,开始上干货。

2022-10-28 10:49:45 587

原创 C++之多模式匹配问题

给定一个文本串 T=t1t2…tn,再给定一组模式串 P=p1,p2,…,pr,其中每个模式串 pi 是定义在有限字母表上的字符串 pi=p1ip2i…pni。要求从文本串 T 中找到模式串集合 P 中所有模式串 pi 的所有出现位置。模式串集合 P 中的一些字符串可能是集合中其他字符串的子串、前缀、后缀,或者完全相等。解决多模式串匹配问题最简单的方法是利用「单模式串匹配算法」搜索r遍。这将导致预处理阶段的最坏时间复杂度为 O(|P|),搜索阶段的最坏时间复杂度为 O(r∗n)。Wu-Manber。

2022-10-28 10:40:25 1357

原创 在vs2022上配置qt插件教程

点击安装即可。记得留下最开始的安装文件,如果以后有其他的扩展或者修改,都可以使用它。

2022-10-27 22:29:51 14233 7

原创 C++之单字符串匹配问题

BM算法非常的复杂,而且也会有效率不高的情况,但是它常态的效率却是KMP的2~3倍,而KMP的效率可以说是非常快了,所以说BM还是非常经典的算法。每次对同一个问题,不同的解决办法时,我们总需要思考和总结他们对这个问题的优化思路是什么?牺牲一定的效率,提高代码的健壮性和稳定性。面对某个多次调动的表达式,通过预处理,或者缓存来实现加速。通过空间来换时间。又或者对于查找,采用hash结构来提高效率。等等,都是值得我们思考和总结的。如果有用希望得到大家的二连,同时也感觉大家的阅读。

2022-10-27 12:24:57 1259

原创 C++之泛型编程

模板:建立通用的与的算法模板。可复用性增加,冗余减少。C++泛型编程的知识其实没有那么多,但是能够玩出的花式确实非常多,最好的就是 参考STL标准库的学习,这是泛型编程的巅峰之作!!首先来看C++的体系图设计模式是通过增加代码复杂性,来换取代码的灵活性,而学习设计模式最好从项目中汲取经验,不然就等着面试的时候背一下八股文,应付一下也是无所谓的。泛型编程,比如STL,Boost库代表了C++顶尖开发者的水平。主要分为两个部分,。

2022-10-26 17:50:06 631

原创 C++数据结构之哈希表

接下来是数据结构中哈希表的总结,哈希表在我以前学python的时候,也被称为散列表。简单的理解来说,哈希表我们翻越的拼音字典,一个拼音对应一个汉字或多个汉字。

2022-10-24 19:05:44 1231

原创 C++数据结构之队列

这里详细总结一下C++中队列这个数据结构,涉及队列的基本知识,以及队列的变种还有相应的应用场景等,总体来说算是一个知识的检索,不过遇到自己感兴趣的知识,还是会对其进行尝试。

2022-10-23 17:33:32 2173

原创 20221022莫名有感

本来准备部署一个个人的博客,但是想想又太过孤独,且和我计划的方向差的太远,还不如就采用CSDN这种,大家一起在里面,也算一个热闹,至少知道周围都是和我一样书写博客的人。以算法与数据结构这个栏目为例,本来准备把基础的数据结构,例如数组,链表,堆栈,队列的知识都做一个总结,而我只是一味的参考一个已经讲述很详细的资料了。懈怠是因为没有了书写的激情,这些基础的数据结构,参考别人的资料都写的很详细了,自己也大概掌握,但是却要再次学习和书写,可能有人会说这是所谓的复习。发了些许牢骚,也算是一个人的自言自语了。

2022-10-22 20:58:31 509 1

原创 C++数据结构之堆栈

逆波兰式(Reverse Polish Notation,RPN,或逆波兰记法),也叫后缀表达式(将运算符写在操作数之后)。逆波兰算法是典型的使用了栈结构,具体情况可以通过上述链接进入。

2022-10-22 20:07:57 735

原创 C++基础算法之逆波兰

中缀向后缀进行变化的核心是s2,我们可以认为s2是一个单调递减栈,但又不完全想,因为有括号()可以让某些运算符的“优先级”无限拔高!这里我的理解的是()是一个整体的作用域,而左括号(可以看成是优先级最高的运算符,同样也是作用域的起始,而右括号)则是这个作用域收尾的时刻。那么这样看的话,依然是只有高优先级的运算符在上,第优先级运算符在下,而作用域这个整体的优先级是最高的。而使用单调递减栈的作用就是找到该元素右边第一个优先级小于自己的运算符,然后对前面的值进行运算的操作。。。

2022-10-22 20:07:12 2209

原创 C++数据结构之单调栈

单调栈(Monotone Stack):一种特殊的栈。在栈的「先进后出」规则基础上,要求「从 栈顶 到 栈底 的元素是单调递增(或者单调递减)」。其中满足从栈顶到栈底的元素是单调递增的栈,叫做「单调递增栈」。满足从栈顶到栈底的元素是单调递减的栈,叫做「单调递减栈」。

2022-10-22 20:06:19 2118

原创 C++数据结构之链表栈

这里定义了默认构造和拷贝构造,没定义有参构造。然后是堆栈基础操作,判空,判满,入栈,出栈以及获取栈顶元素等操作。最后还加了size(),用于判断链表中的数据是否存在。数据成员则有两个,分别是当前的元素个数、栈指针。接下来,我们看各自的实现。

2022-10-22 15:56:05 548

原创 C++数据结构之顺序栈

这里定义了有参构造和拷贝构造,没定义默认构造,因为这样就涉及动态扩容,这里就不做实现。然后是堆栈基础操作,判空,判满,入栈,出栈以及获取栈顶元素等操作。最后还加了size(),和重载了[]运算符,一个共有,一个私有。数据成员则有三个,分别是当前的元素个数、栈的容量以及栈指针。接下来,我们看各自的实现。

2022-10-22 15:42:06 1435

原创 C++6种基础线程的应用

joinable()判断当前线程是否可以做join或者detach过程,可以返回true,不可以返回false。join()函数加入,回合线程,阻塞主线程,等待子线程执行结束,才会回到主线中。detach()函数,分离,打破依赖关系,子线程执没执行完,我也不知道。多个线程共享数据的时候,出现冲突,这里就需要线程锁。

2022-10-22 14:57:46 250

原创 C++异常处理和断言

异常是程序在执行期间产生的问题。C++ 异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。异常提供了一种转移程序控制权的方式。C++ 异常处理涉及到三个关键字:**try、catch、throw**。assert用于检查产品上线前错误以及修复代码,生产环境不使用。用来检查非法情况而不是错误情况的,用来帮开发者快速定位问题的位置。异常捕获用于处理不可控制的错误,生产环境可使用。用于对程序发生异常情况的处理,增强程序的健壮性和容错性。

2022-10-21 13:52:55 913

原创 前端入门的一些知识

Vue.js致力于构建数据驱动的web应用开发框架,以简洁化,轻量级,数据驱动,模块友好等优势深受企业以及前端开发者的喜爱,成为前端开发人员必备的技能。项目的了解,还是导师让我做电子数据可视化大屏,但是由于嫌弃我做网页,用html+css+js实现,但是我想如果用QT开发这种,怕是吃力不讨好,后来一次偶然在一个论坛,看到别人聊到了Electron,我就了解了一下,还发现。的出现,让我有了可以使用自己熟悉的语言以及简单的编辑工具,就可以做出一个小桌面应用的希望。这个冲击了我的世界观,要知道直接使用。

2022-10-20 10:43:38 294

原创 Vue基础入门

这里作为一个八股文,到时候面试得时候扫盲,在回来考古一下。:主张最少, 没有多做职责之外的事Vue 有些方面是不如 React,不如 Angular.但它是渐进的,没有强主张, 你可以在原有系统的上面,把一两个组件改用它实现,当 jQuery 用;也可以整个用它全家桶开发,当 Angular 用;还可以用它的视图,搭配你自己设计的整个下层用。你可以在底层数据逻辑的地方用 OO 和设计模式的那套理念,也可以函 数式,都可以,它只是个轻量视图而已,只做了自己该做的事,没有做 不该做的事,仅此而已。

2022-10-19 11:21:27 323

原创 C++数据结构之链表(详解)

链表的定义一种线性表数据结构。它使用一组任意的存储单元,来存储一组具有相同类型的地址,但是链表一般是内嵌到数据结构中,而数据结构的类型可以是不同的。

2022-10-18 13:34:09 3941

原创 C++链表的排序实现

对于链表的排序算法,除了希尔排序之外,且堆排序不建议,其他排序方法都是支持的,如下:冒泡排序,选择排序,插入排序,归并排序,快速排序,计数排序,桶排序和基数排序。下面废话不多说。

2022-10-18 12:56:18 5224

原创 python大数据之numpy

每一个【】代表一个轴,轴里面的可以看作元素,如果该元素也有【】,可以看成另一个轴。轴的数量也能反映维度。如果数据太多,他会自动显示边角数据,想要显示全部数据。

2022-10-18 10:21:11 1150

原创 ECharts的简单应用

Apache ECharts一个基于JavaScript的开源可视化图表库。SVG与Canvas比较svg 是一种矢量图,而 canvas 依赖于分辨率。所以 svg 放大不会失真,但是 canvas 绘制的图形会失真。svg 支持事件处理器,而 canvas 不支持事件处理器。svg 中的文字独立于图像,文字可保留,可编辑和可搜索,canvas 的文本渲染能力弱。canvas 适合图像密集型的游戏,频繁地重绘图像,svg 绘制的复杂度高时减慢渲染的速度。

2022-10-17 20:27:35 1088

原创 POST和GET请求

本文收录到“扫盲”专栏,之前做一个小型的前后端项目,用vue前端框架的时候,要用到axios这个ajax增强版工具,就用到了post和get请求。了解两个事物的区别,我想应该先了解他们的作用,他们的本质。这里我们先了解POST和GET是用来干什么的。安全性:仅指该方法的多次调用不会产生副作用,不涉及传统意义上的“安全”这里的副作用是指资源状态。幂等性:是指该方法多次调用返回的效果形式一致,客户端可以重复调用并且期望同样的结果。上面的总结是可以的,但是忽略了一个重要的因素,那就是这个比较是有前提的。

2022-10-16 21:52:47 641

原创 C++之内核链表和企业链表

作为数据结构中的基础结构之一,链表的优点就是可以不要求连续的存储空间,但是没有了随机访问,在按索引增删改查,似乎效率没有数组快,但是链表也有它优势的地方,linux内核和企业上,对于链表的时候,和我们一般学的方法有所不同,这里详细讲解一下。废话说到这里,开始上干货。

2022-10-13 09:56:52 568

原创 python大数据之随机森林(回归与分类)

随机森林在大数据运用中非常的常见,它在预测和回归上相比于SVM,多元线性回归,逻辑回归,多项式回归这些,有着比较好的鲁棒性。随机森林是一个用随机方式建立的,包含多个决策树的分类器。其输出的类别是由各个树输出的类别的众数而定。废话不多说,直接上干货。

2022-10-12 17:43:27 17627 1

原创 C++内联函数与宏函数

总结宏函数的使用不仅仅是为了炫技,而是一种高效的手段,同样C++提供的内联函数,也是非常有效的手段,这里来详细说明一下宏函数和内联函数的区别与相同点。废话说到这里,开始直接上干货。

2022-10-10 13:52:34 876

原创 python大数据之数据清洗

数据决定模型的上限,好的数据或数据处理,对模型的影响是非常大的,同样,对于数据的处理,不同的数据,处理情况也不一样,具体情况如下所示:缺省值处理,异常值处理,样本的数量,,特征的数量:特征筛选,特征的类型(连续,整形,类别)。

2022-10-03 17:42:42 1455

原创 python大数据之异常值处理

对于数据异常值处理,我的理解是,这里的异常值不是代表数据出现的异常,而是对于你需要建立的模型来说,处于异常值。比如你需要正太分布的数据,那么一些不符合正太分布,或者离群太远的值,可以更具你的需要去进行删除,这样你的模型效果就会更好

2022-10-03 17:38:12 6958

原创 C++之不同数值类型的运算及隐式转换

在C++的编写过程中,我们常常会计算不同类型之间的数据,比如long与short进行加减运算,又或者unsigned int与int之间的转换会怎么样,int与double之间的运算以及浮点类型数据是如何表示的。这里我们来仔细的梳理一下:废话说到这里,开始上干货。

2022-10-02 16:13:36 1632 1

原创 python大数据之数据分割(含k折交叉验证)

在大数据问题中,我们常常需要对数据进行分割,得到X和y的数据,这里我们来详细讲解一下数据分割函数train_test_split,以及用k折交叉验证来分割数据。

2022-09-21 16:36:37 1911

原创 python大数据之缺省值处理

一般对数据进行缺省值处理,都是全部的数据,所以这里先不做分割。诸如删除法,临近值填充,中位值填充,众数填充,平均值填充,KNN,回归等方法

2022-09-18 14:45:44 1864

原创 C++数据结构之循环链表

循环链表对比与单链表,它没有指针指向NULL,而是构成了一个圈,但是基本的增删改查相差不大,主要是结束循环的判断条件。循环链表在某些调度问题上会用到。对于链表操作,最关键的就是申明一个临时指针去访问链表,这样链表头节点的位置就不会因为增删改查操作而改变

2022-09-17 10:09:27 1932

空空如也

空空如也

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

TA关注的人

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