自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 还有人不知道ArgumentParser命令行解析器——我不允许_hfargumentparser(1)

没想到我会在这上面出差错,结果框框报错,找别的文章就甩一段翻译😂😂我还真没看明白,今天直接上实战搞懂他。官方文档传送门。

2024-05-17 04:08:03 820

原创 还在感觉为红黑树所困扰?相信我你就点进来看!!!★★★_红黑树好麻烦

我们已经知道了,对红黑树的结点进行插入时,插入的结点可能是根,也可能不是根。因此,我们需要从插入节点是根和不是根两种情况进行讨论。如果插入的结点是根,那么我们直接将插入节点变黑,根指向插入的结点,结束,如下图(插入6):1 插入的结点是根:根指向插入的结点,结点变黑,结束2 插入的结点不是根插入的结点是根的时候,情况很简单。那么如果插入的结点不是根呢?对于插入的结点不是根时,就说明插入的结点有父亲,由于父亲结点的颜色关系着我们对红黑树的调整情况。因此我们就需要对插入结点的父亲颜色进行讨论。

2024-05-17 04:07:30 705

原创 还在感觉为红黑树所困扰?相信我你就点进来看!!!★★★_红黑树好麻烦(4)

2.1 如果插入结点的父亲是黑结点:链接插入结点,结束2.2 如果插入结点的父亲是红结点对于插入结点的父亲结点颜色是黑色时,情况也并不复杂。下面看一下如果插入结点的父亲结点颜色是红色时情况如何。如果插入结点的父亲结点颜色是红色,那么此时就需要对红黑树进行调整。由于调整可能涉及到旋转,因此我们需要对插入结点是父亲节点的左还是父亲节点的右进行讨论,再进行这个讨论前,我们同样需要判断父亲结点是爷爷结点的左还是右,即如下所示:1 插入的结点是根:根指向插入的结点,结点变黑,结束2 插入的结点不是根。

2024-05-17 04:06:57 612

原创 还在感觉为红黑树所困扰?相信我你就点进来看!!!★★★_红黑树好麻烦(3)

此时,我们也是要直接插入,但是情况要稍微复杂一点,需要进行调整,详细调整过程我们在下面进行讨论,这里先不讨论。我们想一下,如果插入位置处的父结点是红色,那么其父结点的兄弟(待插入结点的叔叔)可能是红色,也可能是黑色。

2024-05-17 04:06:24 891

原创 最新【算法学习】1480(2),内容太过真实

这道题直接照做就好了,唯一的点就是返回的结果是否需要开辟新的空间,事实上,我们可以原地修改,不用开辟新的内存空间。

2024-05-17 00:04:38 276

原创 最新【算法基础】图解 最小生成树 (Prim Kruskal) 859,2024年最新怎么入门C C++

/res:最小生成树的树边权重之和,cnt:全部加入到树的集合中边的数量(可能有多个集合)g[a][b] = g[b][a] = min(g[a][b], w);bool operator< (const Edge &W)const {//从小到大排序。if(cnt == n - 1) {//树中有n个节点便有n-1条边的生成树。= find(b)) {//如果不在同一个连通块。//把a加到b集合里面去。int find(int x) // 并查集。

2024-05-17 00:04:05 729

原创 最新【算法基础】二分查找 模板 AcWing 789,2024年最新成功收获美团,2024年最新小米offer

return l;return r;i> k;return 0;*/

2024-05-17 00:03:32 614

原创 最新【算法基础】 数位DP Acwing338(2),0基础学C C++

人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!// l为第j位的左边的数,r为右边的数,dj为第j位上的数 eg中的’1’。i ++) {//遍历0 ~ 9。int get (int n ) {//求n是几位数。//pow(数,幂) 求 10^(右边的数的位数)swap(a,b);

2024-05-17 00:02:58 377

原创 【C语言】关键字的深入理解(第三期)_while double if为什么不是c语言的关键字(1)

应该进行范围精度比较!精度: 自己设置,通常是宏定义。或者使用系统精度!以上两种方法都可以进行浮点数比较,那么浮点数跟 0 比较又是怎么一回事呢?我们有了以上的例子,可以知道浮点数肯定是不能直接 == 比较的,那么如何跟 0 比较呢?接着往下看:通过上图两个代码我们可以发现,当数值足够小的话会被判定成0,我们可能在一些书上写的是

2024-05-16 17:13:33 370

原创 【C语言】从零开始的C语言小游戏之路(总)_如果我想学习用c语言自制小游戏,我该怎么样学习

这里你会写出能移动的小球,第一次看见枯燥的代码终于能和键盘进行交互了。我们学逻辑的适合写过猜数游戏。虽然能交互,但那并不是真正的可控制的,写完这个如果用心的人应该会感到兴奋。这时候不应该自己再创造个更大的地图,加入一些奇怪的元素去扔给同学去玩吗,哈哈。这里首先可以拓展下五子棋。在前面学会wasd移动小球的时候,思考能不能设定按下空格就把小球的残影留在原地呢?这里请先自己思考如何实现,如果你没有弄清楚前面走迷宫的代码,或者你没有思考,那么抱歉,后面的步骤都无法进行。

2024-05-16 17:13:00 292

原创 【C语言】strcpy函数的超细节详解(什么是strcpy,如何模拟实现strcpy )_c语言strcpy

/ 将最后的’\0’拷贝过来。

2024-05-16 17:12:26 358

原创 SpringCloud微服务电商系统在Kubernetes集群中上线详细教程_微服务 程序包有多个,每个程序包都是不同的功能结合,且每个微服务程序都有自己的(1)

本次使用的微服务为spring cloud的电商平台项目项目名称:simple-microserviceeureka-service(注册中心)gateway-service(网管服务)order-service(订单服务)product-service(商品服务)portal-service(门户网站)stock-service(库存服务)

2024-05-16 15:04:08 430

原创 springCloud_Feign远程调用_feignclient 调用端 被调用端 代码(1)

default: # 这里用default就是全局配置,如果是写服务名称,则是针对某个微服务的配置 loggerLevel: FULL # 日志级别。② 在order-service的启动类添加注解开启Feign的功能。① URLConnection:默认实现,不支持连接池。① 使用连接池代替默认的URLConnection。④ 注入Feign的接口,然后调用其中的方法即可。方式二:java代码方式,需要先声明一个Bean。Feign是一个声明式的http客户端.

2024-05-16 15:03:34 272

原创 SpringBoot项目增加统计接口耗时监控拦截器_resettemplate耗时拦截器记录接口耗时

学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**// 需拦截的URI配置。Web Mvc配置文件。

2024-05-16 15:03:01 377

原创 SpringBoot项目增加统计接口耗时监控拦截器_resettemplate耗时拦截器记录接口耗时(1)

第一步:编写拦截器代码。

2024-05-16 15:02:28 336

原创 最全Java-反射机制(超详解)_java反射机制(2),6年菜鸟开发面试字节跳动C C++研发岗

⭕ 一个加载的类在JVM中只会有一个Class实例⭕ 一个Class对象对应的是一个加载到JVM中的一个.class文件⭕ 每个类的实例都会记得自己是由哪个Class实例所生成⭕ 通过Class可以完整地得到一个类中的所有被加载的结构⭕Class类是Reflection的根源,针对任何你想动态加载、运行的类,唯有先获得相应的。

2024-05-16 07:29:06 906

原创 最全Java-反射机制(超详解)_java反射机制(1),上岸蚂蚁金服

⭕ 加载到内存中的运行时类,会缓存一定的时间。在此时间之内,我们可以通过不同的方式来获取此运行时类。

2024-05-16 07:28:32 658

原创 最全Java JVM调优篇_java jvm简单调优,整理几个重要的C C++知识

Concurrent mark sweep(CMS)收集器是一种年老代垃圾收集器,其最主要目标是获取最短垃圾 回收停顿时间,和其他年老代使用标记-整理算法不同,它使用多线程的标记-清除算法。Serial Old 是 Serial 垃圾收集器年老代版本,它同样是个单线程的收集器,使用标记-整理算法, 这个收集器也主要是运行在 Client 默认的 java 虚拟机默认的年老代垃圾收集器。移动内存的, 因此, 这个非常容易产生碎片, 导致内存不够用, 因此, 内存的压缩这个时候就会被启用。

2024-05-16 07:27:59 745

原创 最全IDEA设置背景为自定义照片_idea背景(1),2024年最新3个月学会C C++开发

1. 为什么写这篇文章?2. 操作方法2.1. 步骤12.2. 步骤22.3. 快捷操作 一2.4. 快捷操作 二。

2024-05-16 07:27:24 303

原创 后台核心编程(九):网络编程-域名及网络地址_c hostent h_addr include

是因为hostent结构体并非只为IPv4准备,因此考虑到通用性,声明为char指针类型的数组。确实,如果指针对象不明确时,声明为void指针类型更合理,但我们所学习的套接字函数是早在void指针标准化之前定义的,在当时无法确定指针类型时都采用char指针。大家可在编译gethostbyname.c后自行选择一个域名进行测试,现在我们看一下第24和25行,如果我们只看hostent结构体的定义,结构体成员h_addr_list指向了一个字符串指针数组(由多个字符串地址构成的数组)。

2024-05-16 03:25:54 1048

原创 后台核心编程(七):网络编程-基于UDP的服务端 客户端_k7通过软核实现udp

from: 存有发送端地址信息的 sockaddr 结构体变量的地址值。addrlen: 保存参数 from 的结构体变量长度的变量地址值。to: 存有目标地址的 sockaddr 结构体变量的地址值。addrlen: 传递给参数 to 的地址值结构体变量长度。nbytes: 待传输的数据长度,以字节为单位。nbytes: 待传输的数据长度,以字节为单位。flags: 可选项参数,若没有则传递 0。buff: 保存待传输数据的缓冲地址值。buff: 保存待传输数据的缓冲地址值。

2024-05-16 03:25:21 252

原创 后台核心编程(七):网络编程-基于UDP的服务端 客户端_k7通过软核实现udp(1)

图中展示了 1 个 UDP 套接字与 2 个不同主机交换数据的过程。也就是说,只需 1 个 UDP 套接字就能和多台主机进行通信。

2024-05-16 03:24:48 652

原创 史诗级漏洞爆发,Log4j 背后的开源人何去何从?_log4j-core 开源团队

所幸,。

2024-05-16 03:24:15 777

原创 2024年最全三级网络技术通关指南_99免费视频(2),2024年最新C C++基础学习教程

IP 地址子网掩码地址类别【1】网络地址【2】直接广播地址【3】主机号【4】子网内第一个可用 IP 地址【5】IP 地址类别IP 首段范围A类1~127B类128~191C类192~223则【1】填:A类对 IP地址和子网掩码做如下处理:熟练以后其实没有看起来这么麻烦,做两道就会了。少数情况会给出表格的后两项,让你补充前五项,原理其实是一样的,倒推一下。这道题是大题里面考点最稳定的一道,必须掌握。3.5.1 填表部分(12分)目的网络/掩码长度输出端口。

2024-05-15 15:41:35 1028

原创 2024年最全三、opengles画三角形_java使用gles绘制三角形,C C++-Camera内存问题剖析

/编写顶点着色器代码\n”\n"//编写顶点着色器代码\n”\n”\n"//程序中加载编译链接顶点着色器//创建顶点着色器//绑定源码//编译//检查编译是否成功if (!//使用状态函数//设置状态函数cmake {cmake {jcenter()

2024-05-15 15:41:01 266

原创 2024年最全七、服务的容器化过程_如何把服务器转化成容器,你掌握了多少

容器化部署应用具有灵活、高效的使用资源,容器可以包含其所需的全部文件,如同在虚拟机上部署应用程序一样,可以拥有自己的配置文件和依赖库,还可以拥有自己的网络接口。因此,与在虚拟机上运行应用程序一样,容器化应用比直接安装的应用程序更容易迁移,而且因为应用程序所运行的每个容器均拥有独立的网络接口,所以也不会出现争用同一端口的问题。容器化技术也可以让应用程序向云环境的部署变得更为高效,再加上容器本身已经包含应用程序运行所需的大部分依赖,所有运行容器的操作系统也能很好地瘦身,从而运行更快,占用的资源更少。

2024-05-15 15:40:27 286

原创 C++编程中如何防止内存溢出问题 _c++中全局变量很多,怎么不会超出空间

当你用 C/C++ 书写代码时,应该处处留意如何处理来自用户的数据。(1) 使用非类型安全(non-type-safe)的语言如 C/C++ 等。(3) 编译器设置的内存缓冲区太靠近关键数据结构。不要太悲观,下面讨论内存溢出问题的解决和预防措施。(2) 以不可靠的方式存取或者复制内存缓冲区。必须知道内存缓冲区的总长度。二、解决内存溢出问题。

2024-05-15 09:39:16 328

原创 C++继承时,关于构造函数以及为什么父类析构函数要定义为为虚析构函数的讲解_c++ 继承父类析构函数

父类定义父类对象,子类定义子类对象。这个时候调用函数以及析构都是正常的:eg(代码在最后):父类初始化父类对象和子类初始化子类对象运行截图:因为子类会调用父类的构造函数,所以B对象b时会有父类的构造函数和析构函数出现;

2024-05-15 09:38:40 422

原创 C++红黑树模拟实现map和set_实现map的红黑树的节点数据类型是key+value,而实现set的节点数据类型是value

注:对于set来说第二个参数有点多余,但是对于map来说,因为map的接口当中有些是只要求给出键值key用来比较的(如find()和erase()),如果只有一个参数传入pair类型,但是只能得到第一个key类型的值,无法获得key的类型(不能实现模板函数)对红黑树进行中序遍历后,可以得到一个有序的序列,因此begin()可以放在红黑树中最小节点(即最左侧节点)的位置,end()放在最大节点(最右侧节点)的下一个位置即nullptr。迭代器的++和–的实现相反,但本质上还是差不多的。

2024-05-15 09:38:03 357

原创 C++红黑树模拟实现map和set_实现map的红黑树的节点数据类型是key+value,而实现set的节点数据类型是value(2)

对红黑树进行中序遍历后,可以得到一个有序的序列,因此begin()可以放在红黑树中最小节点(即最左侧节点)的位置,end()放在最大节点(最右侧节点)的下一个位置即nullptr。红黑树的中序遍历是有序的,也就是说:当一个结点的正向迭代器进行++操作后,应该根据红黑树中序遍历的序列找到当前结点的下一个结点。所以实现正向迭代器后,我们可以直接使用适配器,在正向迭代器的基础上,对其接口进行封装达到反向迭代器的效果。找到begin()和end()之后,要遍历红黑树最主要的还是能找到要遍历的下一个节点。

2024-05-15 09:37:26 283

原创 C C++最新Top K算法分析_基于向量交集的topk搜索(1),2024年最新阿里P7深入Binder原理讲解

从伪代码可以看到,二分查找,一个大的问题,可以用一个mid元素,分成左半区,右半区两个子问题。接着,从第k+1个元素开始扫描,和堆顶(堆中最小的元素)比较,如果被扫描的元素大于堆顶,则替换堆顶的元素,并调整堆,以保证堆内的k个元素,总是当前最大的k个元素。画外音:n个元素扫一遍,假设运气很差,每次都入堆调整,调整时间复杂度为堆的高度,即lg(k),故整体时间复杂度是n*lg(k)。堆,是求TopK的经典算法,那还有没有更快的方案呢?直到,扫描完所有n-k个元素,最终堆中的k个元素,就是猥琐求的TopK。

2024-05-15 05:13:18 799

原创 C C++最新Timed-Elastic-Band局部路径规划算法_teb算法python(2),vivoC C++开发面试

每次迭代过程中,算法动态添加新的configuration,删除旧的configuration以将关于空间和时间的分辨率调整至余下的轨迹长度和规划的范围内。在每次迭代开始前的re-initialization阶段,在分析shortrange camera or laser-scan data后可能会收到新的way points,此时就会check新的和更改后的way points。该graph中,每一个约束都为一条edge,并且每条edge允许连接的nodes的数目是不受限制的。,如figure 3所示。

2024-05-15 05:12:42 1096

原创 C C++最新Thread 类及常用的方法_thread类(4),2024年最新渣本逆袭大厂面经分享

构造方法三和四不过是在前面两种构造方法的基础上多添加了一个给线程对象命名的参数,方便程序员进行调试。程序员可以通过 JDK 自带的jconsole工具来直观查看这里创建的线程步骤一:运行程序后,找到自己的 jdk 路径 -> bin ->jconsole.exe步骤二:双击该 exe 文件。选择本地进程,这里罗列着 Java 进程。可以看见我们的程序 func7 ,点击它。在菜单栏选择线程一栏步骤三:查看线程信息。

2024-05-15 05:12:06 1030

原创 C C++最新sublime text3格式化json_sublime text 3 indent json(3),2024年最新研发4面真题解析(C C++岗)

sublime2在输入命令之后,记得重启sublime。第二步:安装 pretty json使用 Command(或ctrl) + Shift + P 调出面板,然后输入 pci ,选中“Package Control: Install Package”并回车,然后通过输入插件的名字pretty json找到插件并回车安装即可。第三步:使用command + ctrl + j快捷键来格式化当前页面的内容。

2024-05-15 05:11:29 418

原创 C C++最全六、opengles显示YUV数据_nv16的opengles片段着色器渲染程序,万字长文总结C C++多进程

最后直接调用赋值,就将YUV数据绑定到自己类中,暂时没有考虑申请内存,还是使用AAsset读取时创建的内存。

2024-05-15 00:44:34 507

原创 C C++最全八大排序算法(1),大厂必备

各种排序的稳定性,时间复杂度和空间复杂度总结:我们比较时间复杂度函数的情况:时间复杂度函数O(n)的增长情况所以对n较大的排序记录。一般的选择都是时间复杂度为O(nlog2n)的排序方法。时间复杂度来说:(1)平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序;(2)线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;(3)O(n1+§))排序,§是介于0和1之间的常数。希尔排序(4)线性阶(O(n))排序基数排序,此外还有桶、箱排序。

2024-05-15 00:43:58 545

原创 C C++最全八、敏捷开发2,2024年最新C C++开发者应该会哪些东西才不会被公司淘汰

持续交付要求完美地实现所有预期,随时准备部署上线,在通过了全部的流程后,不再需要人工测试阶段,因为持续交付技术本身能够最大程度地保证所有编译结果都是正确的。具有持续集成和持续交付的功能、安装简单、配置简单(web界面配置)、丰富的插件和扩展性、是分布式的,能很轻松地实现跨多主机或多平台的分布式部署。是通过自动化的基本设施、自动化的工作流程和持续可测量的应用性能,来整合开发团队和运维团队,以达到更高的合作效率和生产率。为了实现敏捷开发2.0,我们需要采用持续部署、微服务和容器三种技术方案。

2024-05-15 00:43:21 786

原创 C C++最全倾心创作,分支语句和循环语句(1)——分支语句,2024年最新看完豁然开朗

C语言是一门结构化的程序设计语句,可以将其分为三种:顺序语句、选择语句、循环语句。如图:其中C语言中的控制语句可以分为三大类:1.条件判断语句(分支语句):if , switch2.循环执行语句:do……while , while ,for3.转向语句:break语句,goto语句,return语句 ,continue语句。

2024-05-15 00:42:45 1004

原创 C C++最全C++(17)——泛型算法绑定器和智能指针_c+(1),2024年C C++大厂面试

(img-1MKKYwyu-1715681939833)]//带标志位的智能指针:新的智能指针指向后获得释放权,旧指针失去释放权。class Auto_ptr//赋值或者拷贝构造后先定义的对象会出错。

2024-05-14 18:19:22 559

原创 C C++最全C++(10)——实现复数类和String类_c+,2024年最新非科班生金九银十求职经历

/先开辟空间,最后用其初始化对象。//begin返回的是容器底层首元素的迭代器的表示。//end返回的是容器末尾元素后继位置的迭代器表示。//给String字符串类提供迭代器的实现。

2024-05-14 18:18:46 670

空空如也

空空如也

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

TA关注的人

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