自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (4)
  • 收藏
  • 关注

原创 给准备秋招C++后端岗位同学的一些建议

给准备秋招C++后端岗位同学的一些建议本仓库用于记录本人在今年准备春招实习和即将到来的秋招的过程中,学习和总结到的一些知识,用于自己的回顾,也对这关键的人生历程留下自己的回忆,愿不负所望,找到理想满意的工作,求职加油!!!!1. C++这块主要看四本书,第一本当然是《C++ Primmer》,另外三本是《Effective C++》《STL源码》和《深度探索C++模型》,搭配侯捷老师的B站课程进行学习,重点学习内容如下:指针、引用、数组、内存引用与指针区别C 和 C++ 的一些区别,比如 ne

2022-04-19 16:39:57 781 5

原创 百度一面面经

自我介绍一下详细介绍一下蚂蚁的项目详细说一下rpc的过程,使用的是protobuf3还是protobuf2,有哪些区别?pb文件中声明的变量有默认值,而服务端也可能会有返回值,如果这个返回值就是初始值,那么客户端是否能感知是默认值,还是返回值?服务器上的用户的重要数据是怎么备份的?虚拟机起得时候挂了怎么处理?熟悉C++吧,讲一下纯虚函数和虚函数,什么是多态?子类是如何找到虚函数的?如果基类的析构函数没有声明为虚函数有什么影响?RAII概念和机制介绍一下?vector一直push_back.

2021-10-13 17:28:09 253 2

原创 快手一面面经

时间:2021/09/18 部门:网络SDK 岗位:C++软件开发工程师自我介绍一下讲一下蚂蚁的实习吧进程和线程的区别你知道有哪些锁?(互斥锁,读写锁,自旋锁)讲一下自旋锁的机制?TCP和UDP的区别TCP是如何保障可靠性的?浏览器输入一个URL到返回结果,渲染,涉及到了哪些协议讲一下?使用GET方法从服务器获取资源设计到了哪些缓存?进程之间通信的方式有哪些?new和malloc的区别?手撕代码大数相加手撕代码单链表判断是否有环?...

2021-10-13 17:27:01 221

原创 用户数据包协议基础(UDP)-----UDP系列1基础知识

用户数据包协议基础(UDP)不提供差错纠正,队列管理,重复消除,流量控制和拥塞控制,不保证能到达目的地提供差错控制使用UDP的应用程序必须自己实现保证数据可靠投递或正确排序比其他的传输协议开销小,面向无连接,广播和组播用的比较多,UDP头部开销仅需8个字节UDP传输下的IP数据报格式10.2 UDP头部UDP源端口 :如果数据报的发送者不要求对方回复的话,源端口号可以被置为0UDP目的端口 :IP协议的头部种的”下一个头部“字段的值将指明特定的传输协议,说明端口

2021-05-05 21:56:13 1833

原创 一台Linux主机能接收的最大TCP连接个数

TCP/IP协议的元组四元组:源IP地址,目的IP地址、源端口号,目的端口号五元组:源IP地址,目的IP地址、源端口号,目的端口号、协议号七元组:源IP地址,目的IP地址、源端口号,目的端口号、协议号、服务类型及接口索引端口号的分类端口号最多有65536个,范围是0~65535,可以分为三类:• 公认端口,0~1023,紧密绑定于一些服务,通过这些端口的通讯明确表明了某种服务的协议• 注册端口,1024~49151,松散地绑定于一些服务,既可用于某些服务,也可用于其他目的• 动态和私有端口,

2021-05-04 16:09:34 913

原创 C++内存模型(C++内存管理)程序运行时内存分区

C++程序在执行时,将内存大方向划分为5个区域程序运行之前:代码区 :存放函数体的二进制代码,由操作系统进行管理的存放CPU执行的机器指令代码区是共享的,只读的全局区(静态存储区) :存放已初始化的全局变量和静态变量以及常量(其实又分为字符串常量和全局常量)const修饰的全局变量放在全局区,const修饰的局部变量属于局部变量放在栈区中;该区包含了在程序中明确被初始化的全局变量、已经初始化的静态变量(包含全局静态变量和局部静态变量)和常量数据(如字符串常量)(常量

2021-05-02 16:12:08 523 2

原创 C++ const 关键字详解(全网最全)

1. const修饰符的作用const类型定义: 指明变量或对象的值是不能被更新,引入目的是为了取代预编译指令可以保护被修饰的东西,防止意外的修改,增强程序的健壮性编译器通常不为普通const常量分配存储空间,而是将它们保存在符号表中,这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高可以节省空间,避免不必要的内存分配2. 初始化和constconst修改全局变量是存储在全局区(即静态存储区),修饰局部变量时存储在栈区,const修饰的对象一旦创建后其值便不能再改变

2021-05-02 16:04:38 5844 4

原创 C++ static关键字详解(全网最全)

1. 全局静态变量全局变量前加上static,全局变量就成了全局静态变量,存储在全局区即静态存储区,如未初始化则存放在BSS段(Block Started by Sysmbol),初始化为0,全局静态变量在声明它的文件之外是不可见的,准确的来说,从定义之处开始,到文件结尾。2. 局部静态变量在局部变量之前加上static,局部变量就变成了一个局部静态变量,存储在静态存储区,如未初始化则存放在BSS段(Block Started by Sysmbol),初始化为0,作用域是该代码块内,代码块外不可

2021-05-02 16:01:34 376

原创 2021招商银行提前批Fin Tech训练营笔试题目(研发通道)

招商银行提前批Fin Tech训练营笔试题目(研发通道)时间:2021-04-281.欢迎入营题目描述训练营同学来自n(1≤n≤105)个城市,每个城市的同学人数分别为a1,a2,…,ana_1,a_2,…,a_na1​,a2​,…,an​(1≤ana_nan​≤109)。小Z将派出n辆车迎接同学。同一个城市的同学需要坐同一辆车,一辆车只能载来自同一个城市的同学,一辆车只能跑一次,且不能超过每辆车的载客量b1,b2,…,bn(1≤bn≤109)b_1,b_2, …, b_n(1≤b_n≤109)

2021-05-01 19:04:19 1533 2

原创 电脑系统启动流程(执行的第一条指令在哪里)

1. 系统上电2. CPU初始化CPU加电稳定后从0XFFFF0(x86系统,其他系统可能会不同)读第一条指令,第一条指令是跳转指令,将指令指针寄存器跳转到BIOS所在的位置,开始执行BIOS程序;CPU初始状态为16位实模式,CS:IP是16位实模式,20位的地址总线,寻址大小为1MB3.BIOS程序运行 a. 硬件自检POST b. 检测系统中内存和显卡等关键部件的存在和工作状态 c. 查找并执行显卡等接口卡BIOS,进行设备初始化; d. 执行系统BIOS,进行系统检测;(检测和

2021-04-28 19:23:14 2480

原创 剑指offer14-I剪绳子

题目描述给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m-1] 。请问 k[0]*k[1]*…*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。输入描述输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 =

2021-04-16 14:37:14 95

原创 new delete new[]和delete[]的面试总结和底层实现的介绍

1.new delete总结分配 释放 类别 可否重载 malloc() free() C函数 不可 new delete C++表达式 不可 ::operator new() ::operator delete() C++函数 可 allocator<T>::allocate() allocator<T>::deallocate() C++ 标准库 可自由设计并搭配任何容器

2021-03-31 23:41:19 1052

原创 C++常用基础算法

1. 快速排序算法2. 堆排序算法3. 归并排序算法4. 二分查找算法5. 线性查找算法(BFPRT)6. DFS7. BFS8. Dijkstra算法9. 动态规划算法10. 分治算法11. 贪心算法12. 回溯算法13. 分支界限法14. 朴素贝叶斯分类算法...

2021-02-01 21:00:08 1259

原创 堆排序自下而上建立大根堆时间复杂度为O(n)的证明

建立大根堆时,设有n个记录的初始序列所对应的完全二叉树的深度为h,建初堆时,每个非终端结点都要自上而下进行"筛选"。由于第i层上的结点数小于等于i-1,且第i层结点最大下移的深度为h-i,每下移一层要做两次比较,所以建初堆时关键字总的比较次数为:h=⌊log2(n)⌋+1h=\lfloor log_2(n)\rfloor+1h=⌊log2​(n)⌋+12h≤n+12^h\leq n+12h≤n+1∑i=h−112i−1⋅2⋅(h−i)=∑i=h−112i(h−i)\sum_{i=h-1}^1 2

2020-12-20 16:17:03 2435 2

原创 2020秋数据结构实验第三题:文本相似度比较 C++实现

实验描述实验分析实验代码实验结果

2020-12-12 22:34:50 3036 9

原创 2020秋数据结构实验第一题:兔子数列仿真(斐波那契数列仿真)C++实现

实验题目描述:编程实现兔⼦问题,历史上有⼀个有名的关于兔⼦的问题:假设有⼀对兔⼦,⻓两个⽉它们就算 ⻓⼤成年了。然后以后每个⽉都会⽣出1对兔⼦,⽣下来的兔⼦也都是⻓两个⽉就算成年,然后每 个⽉也都会⽣出1对兔⼦了。这⾥假设兔⼦不会死,每次都是只⽣1对兔⼦,实现计算第20个(第 15)⽉的兔⼦对数 加入条件,每对兔⼦⽣完2次(N次)兔⼦后会死亡,实现计算第20个(第15)⽉的兔⼦对数 每隔⼏个⽉可以繁殖设置为参数K, 繁殖⼏代后死亡设置成参数P,计算第N个⽉的兔⼦对数题目分析:看似题目是三个

2020-12-09 23:21:33 3023

原创 2020秋数据结构实验第四题:Huffman算法编码和解码 C++实现

实验题目描述总结一下Huffman编码的过程,可以参考wiki百科的下图:先统计词的词频作为权重实验分析:Huffman编码解码的过程比较固定:统计文章的字符频率作为权重; 按照上述规则创建Huffman树,将字符放在各个叶子结点的位置; 对各个叶子结点进行编码获取每个字符的Huffman编码,左0右1; 根据Huffman编码依次解码获得叶子结点时,返回字符,依次完成解码过程; 计算压缩比,按照最基本的一个字符2个字节(中文字)即16位计算,再根据生成的Huffman编码.

2020-12-09 23:20:59 576

原创 2020秋数据结构实验第五题:哈希查找 C++实现

实验描述:实验分析:所谓哈希查找也就是根据输入的数据找到我们想要查找的信息,而且要做到O(1)的时间复杂度,即并不随着数据量的变大而查找次数变得很大,基础哈希表的创建过程如下:根据输入计算Hash值,如果不冲突直接放入对应的槽中; 如果冲突可以采用几种冲突解决的方法进行解决,开放地址法和链式存储法,现在本助教给出开放地址法中的再Hash的方法进行解决冲突; 通过1和2已经创建了Hash表,我们再创建的时候记录冲突最大的次数,也将是我们在查找时的最大查找次数,进行查找,计算平均查找次数。

2020-12-09 23:20:44 404

原创 VS Code 使用Remote-ssh插件远程登陆服务器,方便快捷

1.为什么要使用VS Code插件远程登陆服务器 我们很多时候使用的是shell去远程登陆服务器,然后再使用WinScp之类的软件实现文件传输。但是我们会发现我们修改代码修改起来十分的不方便,需要先在vim里进行修改然后再退出,再编译运行,但是我们知道vim 真的很不好用(可能一部分同学喜欢用它装逼吧),但是vim真的不好用,这个时候我们使用VSCode的插件就可以直接修改代码在VS Code 上,然后保存运行,十分方便,现在介绍下使用方法。2.下载安装Remote-ssh插件搜索...

2020-05-17 21:51:26 1841 2

原创 LeetCode二叉树构造方法,通过一维数组直接构建完整的二叉树(按照LeetCode的格式)

1.LeetCode中二叉树的结构/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */以上是Leetcode中二叉树的结构,然而在题目通常会这样给出那.

2020-05-15 19:39:49 2821 9

原创 Visual Studio 2017提示消失的解决办法

最近在编译YOLOv4碰到一个错误,就把Visual Studio的一个编译选项设置成了True,然后就导致了没有提示符,现在分享下我恢复提示符的做法如上图点击【工具】---【选项】---【文本编辑器】---【C/C++】---【高级】---【IntelliSense】---【禁用IntelliSense】设置为False,如下图:然后就完事了,可以了,搞定了把智能感知关掉,当然就没有智能提醒了呀!...

2020-05-13 20:50:04 3735

原创 2020轻量级目标检测网络(开源)总结

1.曾叱诧风云的YOLOv3在过去的几年里,YOLOv3可以说是大红大紫,做目标检测的同学应该都使用过该网络,在速度和精度上达到了完美的协调,不需要任何的依赖包,全部使用C++实现,看完之后对YOLOv3的作者Joseph Redmon真是顶礼膜拜,真的是大佬,不过刚刚作者宣布退出CV界,忍受不了AI算法用于军事和隐私窥探,对此表示深感惋惜。下面给出一些YOLOv3使用链接:paper:h...

2020-03-02 21:18:47 11718 7

原创 (YOLOv3训练超详细教程)在Ubuntu 18.04下使用YOLOv3训练数据(提供源码及文件夹)

一、环境Ubuntu 18.04 + CUDA10.0 +CUDNN下方百度云链接是我训练时的真实文件,可供大家参考,因为里面包含了我用的数据集可能会比较大,下载百度云大文件推荐使用速盘。如下方链接失效请在评论区留下你的邮箱链接:https://pan.baidu.com/s/1-EmfwTDTqwTKvKUBhLGlAw提取码:lg4y复制这段内容后打开百度网盘手机App,操...

2020-02-18 18:16:19 6381 26

原创 Matplotlib学习笔记-----Python

# pylab 是 matplotlib 面向对象绘图库的一个接口。它的语法和 Matlab 十分相近。也就是说,它主要的绘图# 命令和 Matlab 对应的命令有相似的参数。import numpy as npfrom matplotlib import *from matplotlib.pylab import *X = np.linspace(-np.pi,np.pi,256,en...

2020-02-13 16:01:23 236

原创 CUDA编程之入门

CUDA代码中的函数 CUDA程序文件后缀为.cu。一个.cu文件内既包含CPU程序(称为主机程序),也包含GPU程序(称为设备程序)。凡是挂有“__global__”或者“__device__”前缀的函数,都是在GPU上运行的设备程序,不同的是__global__设备程序可被主机程序调用,而__device__设备程序则只能被设备程序调用。没有挂任何前缀的函数,都是主机程序。主机程序显示声...

2019-11-12 17:19:58 524

原创 利用Python进行数据分析笔记之Python语言基础

2.3.1 语言语义 缩进而不是大括号 Python使用缩进(tab或空格)来组织代码,建议使用四个空格,可能不同环境的编译器不同,考虑for循环来实现排序算法:for x in array: if x < pivot: less.append(x) else: greater.append(x)一个冒号代表一个缩进代码段的...

2019-11-05 22:19:06 299

原创 PowerPoint 录制屏幕+解决找不到免费录制屏幕软件

免费录制屏幕肯定很多同学或者老师在录制屏幕时寻找各种各样的录制屏幕的软件,甚至还需要缴费,而新版本的office PowerPoint已经支持录制屏幕功能了,接下来我们拭目以待!1、安装office自行百度2、新建pptx文件在插入里点击屏幕录制!选定要录制的区域,然后点击开始录制,之后会自动保存在原PPT中,如下图:右键另存为视频即可保存...

2019-05-31 22:43:33 2567

原创 Anaconda 出现更新WARNING的处理方法

WARNING: The conda.compat module is deprecated and will be removed in a future release.碰到上述的worning,不要惊慌不要害怕,请使用下述指令conda update -n base conda提示应该更新conda指令的版本了,输入之后再次打开不再有此警告!...

2019-05-28 15:34:33 6700 2

原创 KalmanFilter.h卡尔曼滤波头文件+arduino

#include "KalmanFilter.h"//////////////////////////yijielvbo////////////////////void KalmanFilter::Yiorderfilter(float angle_m, float gyro_m,float dt,float K1){ angle6 = K1 * angle_m + (1 - K...

2019-03-27 17:56:50 4289

原创 arduino如何在中断函数中编写延时函数

arduino如何编写

2019-02-27 20:14:17 10818

原创 VS2017配置安装64位Boost+win10

1.下载安装Boost库我们这里采用最简单的安装方法,下载预编译库,具体下载方法如下:打开boost库的官方网站下载好后解压即可,我下载到了D盘。2.VS2017配置Boost库我们下载的是64位的Boost库,因此平台得是64位; 我们修改配置的项目是建立在上篇文章的基础上 ;  1.配置C/C++附加库目录    2.配置链接器附加库目录 ...

2019-01-03 17:47:08 1339

原创 VS2017配置OpenCV 4.0 安装+win10

OpenCV 4.0-alpha 安装1.下载和安装OpenCV SDK2.配置环境变量3.工程包含(include)目录的配置1.下载和安装OpenCV SDK用浏览器打开官网http://opencv.org/进入到下一个界面之后进行下载得到一个.exe文件,开始安装,与其说是安装不如说是解压更合适,因为我们下载的.exe文件就是一个自解压程序而已。双击这个文件后程序会提示我们解压...

2018-10-13 11:56:00 4551 14

清华大学操作系统课程PPT.zip

该资源为清华大学学堂在线操作系统的PPT,包含该课程的全部PPT并对PPT进行了相应的重命名整理,该课程在学堂在线同步播出,PPT是2019年版本的,版本其实大同小异,都是一样的,如果实在没有1.9元,可以发送邮件到[email protected],说明情况,我会把资源直接发到你的邮箱!

2021-04-22

公式编辑器_AxMath_Setup_Win7_8_10_20200517.zip

这是Axmath插件,支持正版,不过不花钱也可以用基本功能哦,这个插件十分好用,可以试试哦,有能力的可以购买注册

2020-05-22

TL740D.rar

文件中TL740D.h以及TL740D.cpp对应深圳瑞芬陀螺仪TL740D同时也适用于TL750D,其中包括陀螺仪的波特率,置零,读取数据(直接返回int 的角度值),设置陀螺仪发送的速度,设置应答模式,发送应答指令等均已封装,需要安装boost库,其中main.cpp是一个样例,详细说明如何使用!

2019-07-01

VS2017C++windows桌面应用程序项目OpenCV及Boost库测试

这里是一个VS2017的windows桌面应用程序项目,项目已经配置了64位的OpenCV4.0库和64位的Boost库,其中OpenCV库和Boost库都安装在D盘里,大家可以在项目的附加库目录和包含目录里查看安装位置,以便大家顺利编译,另外想要了解怎么配置的可以查看本人博客。

2019-01-03

空空如也

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

TA关注的人

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