自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(483)
  • 资源 (9)
  • 收藏
  • 关注

原创 487-Qt导入第三方库(以opencv库为例子)

添加库:直接在.pro文件中,右键点击添加库。.dll—执行过程中的动态链接库。

2023-04-30 21:12:49 820

原创 486-Qt5.9.0安装注意事项

【代码】486-Qt5.9.0安装注意事项。

2023-04-30 21:10:45 386 1

原创 485-GDB调试程序

GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。一般来说,GDB主要帮忙你完成下面四个方面的功能:1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)

2022-10-24 10:40:20 597

原创 484-红黑树

红黑树:红黑树和AVL树的对比:红黑树也是一棵二叉搜索树。 满足每个节点的左子树的值都小于节点的值,节点的值都小于节点的右子树的值。(上面画的10和30不准确)红黑树的5个性质:面试问题:在红黑树中,节点的左右子树的高度差最多不能超过多少?根节点root分别到叶子节点1, 2,假设下面这种极端的情况:所以在红黑树中,长的最多不能超过短的2倍。我们还是按照BST树的插入方式进行的:只是增加了条件(需要满足红黑树的5个性质):如果父亲是红色节点,造成连续的红色节点,我们进行插入的调整如下:我们要新插入节点

2022-08-07 10:55:48 718

原创 483-82(23、239、450、113)

代码】483-82(23、239、450、113)

2022-08-01 15:13:26 189

原创 482-静态库、动态库的制作、使用及区别

库文件是计算机上的一类文件,可以简单的把库文件看成一种代码仓库,它提供给使用者一些可以直接拿来用的变量、函数或类;库是特殊的一种程序,编写库的程序和编写一般的程序区别不大,只是库不能单独运行;库文件有两种,静态库和动态库(共享库)静态库在程序的链接阶段被复制到了程序中;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用。库的好处1、代码保密2、方便部署和分发。......

2022-07-30 17:44:23 312

原创 481-82(105、24、82、34、153)

105、24、82、34、153

2022-07-30 13:16:47 197

原创 480-82(59、151)

代码】480-82(59、151)

2022-07-29 09:21:20 145

原创 479-82(54、11)

代码】479-82(54、11)

2022-07-28 21:51:30 164

原创 478-82(56、128、718、129)

代码】478-82(56、128、718、129)

2022-07-27 15:03:59 148

原创 477-82(236、61、47、74、240、93)

代码】477-82(236、61、47、74、240、93)

2022-07-26 15:51:03 239

原创 476-82(322、64、2、46、62、114)

代码】476-82(322、64、2、46、62、114)

2022-07-25 15:04:58 3748

原创 475-82(230、43、78、79、213、198、1143)

代码】475-82(230、43、78、79、213、198、1143)

2022-07-24 20:38:24 173

原创 474-82(8、221、300)

代码】474-82(8、221、300)

2022-07-23 20:06:43 166

原创 473-82(40、662、31、98、189)

代码】473-82(40、662、31、98、189)

2022-07-23 13:14:49 267

原创 472-82(22、165、39、剑指 Offer II 078、48. 旋转图像)

代码】472-82(22、165、39、剑指OfferII078、48.旋转图像)

2022-07-22 11:01:10 178

原创 471-82(647、5、92、143、148、19)

代码】471-82(647、5、92、143、148、19)

2022-07-20 21:02:04 214

原创 470-82(200、1049、416、50)

publici++){i++){j--){}};

2022-07-19 23:33:22 184

原创 469-82(62、63、343、96)

代码】469-82(62、63、343、96)

2022-07-19 10:38:20 181

原创 468-82(142、199、509、70、746)

代码】468-82(142、199、509、70、746)

2022-07-18 19:18:41 215

原创 467-82(15、33、103、82)

代码】467-82(15、33、103、82)

2022-07-17 19:07:52 1599

原创 466-82(3、146、215)

代码】466-82(3、146、215)

2022-07-16 23:52:45 130

原创 465-剑指offer(53-I、53-II、04、50)

代码】465-剑指offer(53-I、53-II、04、50)

2022-07-15 12:52:12 140

原创 464-剑指offer(35、05、58、03)

代码】464-剑指offer(35、05、58、03)

2022-07-15 10:25:16 158

原创 463-剑指offer-(09、30、06、24)

代码】463-剑指offer-(09、30、06、24)

2022-07-14 23:17:31 164

原创 462-百度面经2

哈希表 红黑树!栈的应用:队列的引用:线性表 排序算法 哈希表 二叉树 五大算法BST树:BST树的第K大的节点:求中序遍历第K大的节点即可!size:得到元素的个数;compacity:容量大小;可以构造一个函数,不断的向vector中插入元素,打印size大小和compacity大小,即可知道是怎么扩容的!(Win是1.5倍扩容,GCC下是2倍扩容!)为什么是2倍扩容?为什么1.5倍扩容最好?2倍扩容:1.5倍扩容:关联容器:set和map:红黑树;unordered_set和unordered_ma

2022-07-07 18:48:51 736

原创 461-回溯算法(90.子集II、491. 递增子序列、46.全排列、47.全排列 II)

461-回溯算法(90.子集II、491. 递增子序列、46.全排列、47.全排列 II)

2022-07-06 19:20:57 122

原创 458-Linux 三剑客实例详解(grep、sed 、awk)

Linux 操作文本的三大利器分别是 ,简称三剑客。命令格式:其中:参数:输入分隔符,默认以空白字符分隔,通过 -F 选项来执行分隔符 是真正awk命令, 是指定内容的主要命令;是待处理的文件;部分决定动作语句何时触发及触发事件:、;options 参数: 输入分隔符,默认以空白字符分隔,通过 选项来执行分隔符 分割出来的第一段(第1列),分割出来的第二段(第2列),依次类推,代表所有字段。演示:我们使用awk分割meminfo这个文件:只显示第1列:如果我们想在打印第1列之前再打印出一些字段:将l

2022-07-06 16:13:32 522

原创 454-百度面经1

项目:介绍项目:面试官说:你写的项目没有必要啊?项目中遇到了哪些问题?项目如何保证一件事情是否完成?三种情况;项目中怎样实现高并发的?TCP保证发送数据不丢且不重?应用保证发送数据不丢且不重?面试的时候聊到TCP协议和UDP协议,面试官经常给你一种场景让你设计;TCP的三次握手和四次挥手!不进行动态扩容的话,线程池就是死的,数量固定好不好?客观的看!不进行动态扩容:进行动态扩容:线程开销:解决方法:从swap函数引入,形参想要改变实参的值,使用值传递不行;C语言中使用指针,C++中使用引用!在windows

2022-07-06 14:33:41 1248

原创 460-Linux基础(输入输出重定向<、<< 、>、>>)

Linux 中标准的输入设备:默认指的是键盘;标准的输出设备:默认指的是显示器;输入重定向:指的是重新指定设备来代替键盘作为新的输入设备;输出重定向:指的是重新指定设备来代替显示器作为新的输出设备。输入重定向来说,其需要用到的符号以及作用如表 1 所示。例1:默认情况下,cat 命令会接受标准输入设备(键盘)的输入,并显示到控制台,但如果用文件代替键盘作为输入设备,那么该命令会以指定的文件作为输入设备,并将文件中的内容读取并显示到控制台。以 /etc/passwd 文件(存储了系统中所有用户的基本信息

2022-07-05 23:14:21 560

原创 459-Linux基础(echo)

echo 命令是 Linux 中最基本和最常用的命令之一。传递给 echo 的参数被打印到标准输出中。echo 通常用于 shell 脚本中,用于显示消息或输出其他命令的结果。echo 命令的语法如下:1、当选项,则取消尾随换行符;2、如果 选项,则将解释以下反斜杠转义字符:3、 项禁用转义字符的解释。这是默认值1、在标准输出上显示一行文本;2、显示一行包含双引号的文本;若要打印双引号,请将其包含在单引号内;3、显示一行包含单引号的文本;要打印单引号,请将其包含在双引号内!4、显示包含特殊字符

2022-07-05 22:37:00 273

原创 457-Linux基础(压缩包管理tar、rar、zip、gzip)

是英文Tape archive 磁带档案的缩写,可以用来创建档案,以及释放档案。主要参数如下:打包:打完包之后,没有压缩,增大了 !解包:注意:上面只是打包了,并没有压缩!压缩:压缩算法1:使用gzip压缩可以看出,压缩完的文件大小变小了!2716压缩算法1:使用bzip2压缩bzip2和gzip压缩效率差不多!解压:解压方式1:gzip解压方式2 :bzip2解压时,加上参数v,表示显示解压过程(创建压缩包的时候也可以加v参数!)解压时,想要解压到指定的路径:用的比较频繁的是;注

2022-07-05 19:13:11 313

原创 456-C++函数重载机制(汇编层面分析)

举例: overload.cc上面print(12)会去调用print(int),print(“hello world”)会去调用print(string)。如下面的结果:(先用编译,然后执行)为了了解编译器是如何处理这些重载函数的,我们反编译下上面我们生成的执行文件,看下汇编代码(全文都是在Linux下面做的实验)。我们执行命令反汇编并将结果重定向到log.txt 文件中,然后分析 log.txt 文件。1、发现函数void print(int i)编译之后为:(注意它的函数签名变为——_Z5pri

2022-07-04 19:23:12 206

原创 455-C++ 多态(知乎)

多态性(polymorphism)可以简单地概括为:“一个接口,多种方法”,它是面向对象编程领域的核心概念。C++支持两种多态性:多态与非多态的实质区别:如果函数的调用,在编译器编译期间就可以确定函数的调用地址,并生产代码,是静态的,就是说地址是早绑定的。如果函数调用的地址不能在编译器期间确定,需要在运行时才确定,这就属于晚绑定。多态的目的:多态最常见的用法:需要注意:重写有两种:重载:隐藏:隐藏规则如下:举例:有virtual才可能发生多态现象,不发生多态(无virtual)调用就按原类型调用 。上面的

2022-07-04 10:48:01 258

原创 453-atoi函数的实现

作用:参数:返回值:测试:测试结果:2、自己实现atoi函数1、如果参数字符串以数字开头,则一直往后读,直到读到非数字字符或\0。然后将这些数字以整数形式返回。如:,返回整数。,返回整数。2、如果参数字符串以正负号开头,则往后读取,如果紧接着读到数字,此时与(1)相同。只是在返回整数时要加正负号。如果正负号后面不是数字字符,则返回0。如:,返回。,返回。和返回。3、如果参数字符串以空格字符开头(\n,\r,\t,\f,\v),则跳过空格字符,再按照(1)和(2)进行判断。如:,返回。4、如果不是以

2022-07-02 15:38:35 173

原创 452-strcpy、strcat、strcmp、strstr、strchr的实现

作用:思路:2、strcat函数作用:思路:3、strcmp函数作用:思路:4、strstr函数作用:5、strchr函数作用:

2022-07-02 14:57:38 130

原创 451-memcpy、memmove、memset的实现

和都是C语言中的库函数,包含于头文件中。memcpy的作用:作用:下面举个例子说明一下内存重叠是什么意思:

2022-07-02 14:08:37 219

原创 450-深信服面经1

注意:函数和变量前面加extern关键字的区别:动态链接库DLL库中加extern “C”的作用:什么是内存对齐?內存对齐系数:内存对齐规则:1、结构体第一个数据成员放在偏移量offset为0的地方,以后每个数据成员的对齐按照 #pragma pack指定的数值 和 这个数据成员自身长度中,比较小的进行对齐(到首地址的偏移量,指定的数值需要是这个小的数的倍数)。2、在数据成员完成各自对齐之后,类(结构或联合)本身也要进行对齐,对齐将按照 #pragma pack指定的数值 和 结构(或联合)最大数据成员长度

2022-07-02 11:58:16 345

原创 449-原码、补码、反码

所以接下来我们需要来了解一下原码、反码和补码。机器数:机器数的真值:原码的表示与机器数真值表示的一样,即用第一位表示符号,其余位表示数值,例如的十进制的的正负1,用8位二进制的原码表示如下:【+1】= 原:[ 0000 0001 ]【-1】= 原:[ 1000 0001 ]反码的表示方法为:【+1】= 原: [ 0000 0001 ] = 反:[ 0000 0001 ]【-1】 = 原:[ 1000 0001 ] = 反:[ 1111 1110 ]补码的表示方法为:计算机实际只存储补码;所以原码转换为补码的

2022-07-01 21:37:26 137

原创 447-哔哩哔哩面经1

const:volatile:不对变量加volatile,编译器会对变量做一些优化:而加了volatile修饰,生成的汇编是这样:C++的volatile一般只会用在与硬件通信,平时我们编程几乎用不到。具体可以看:https://en.cppreference.com/w/cpp/language/cv四个过程!1、预处理;主要做了以下工作:2、编译;把预处理后的文件进行一系列操作生成相应的汇编文件3、汇编;4、链接;想更深入了解的朋友,建议看看《程序员的自我修养》,也可以看看我的总结篇:https

2022-07-01 20:23:31 320

protobuf-master

protobuf-master

2022-06-13

CMake使用简介.pdf

CMake使用简介.pdf

2022-05-11

C++jiqunfuwuqi

C++jiqunfuwuqi

2022-05-10

C++全套数据结构算法代码

C++全套数据结构算法代码

2022-05-07

C++版数据结构和算法课程

C++版数据结构和算法课程

2022-05-07

网络基础-牛客学习!!

网络基础-牛客学习!!

2022-05-02

socket通信基础socket通信基础

socket通信基础socket通信基础

2022-05-01

UDP通信、本地套接字

UDP通信、本地套接字

2022-05-01

数据库连接池项目相关资料

数据库连接池项目相关资料

2022-04-19

空空如也

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

TA关注的人

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