自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动态规划记录

这里不能先遍历物品,是因为比如a+b+a的字符串,先遍历物品a,只有第一个a后面是true,然后再加入物品b,这时候b物品后面是true,但是已经无法更新到最末尾,答案会出错。这道题有点难理解,刚开始看解析,感觉集合里只要有能够切分的字符串,就会为dp[]=true,导致错误,但是好像我理解错了,有多组的拆分方式也可以。1、设重量值=价值值,看能不能凑到这个target,dp[len]==taget。同时也就是需要考虑容量和数量之间的关系的时候。2、有dp[i][j]种方法,就像。

2024-08-02 12:17:59 282

原创 贪心算法补卡

这里我自己做的思路和解析有些区别,这里我把return ans 放在i>premax之前,而判断return的时候返回的ans,是通过当前的maxx(也就是下一次跳跃的范围,也就是ans+1的范围)就会导致我刚开始需要ans=1, 这里我代码繁琐的主要问题是没有弄清楚ans对应的当前步数范围,还是下一步数范围。因为可以选择步数范围内跳几步,范围就是i+nums[i],然后进一步更新最大范围。

2024-07-23 21:58:56 423

原创 day25打卡

在做的时候出现了两个地方的遗漏,一个是加入一个分割点后进入下一次分割的时候,如果已经有三个分割点了,需要判断剩下的部分是不是符合条件,另一个是没有对if(start>end) return false;看了代码录的解析,做的时候搞错了,把加入解集的代码放在了最后index等于终止条件的时候,看解析了就懂了,获得所有子集的时候,需要遍历整棵树,而不是叶子节点。这里的去重和之前做的去重方式一样,就是排序之后,如果当前元素和前一个一样,并且前一个元素没有被选中,则这个情况需要去重。

2024-07-15 13:28:08 170

原创 day20、21、22补卡

自己想没想出来,看了题解,首先确定返回值,就是root,将root节点返回给上一层,用左右指针去接住,根据BST的特征,如果大于目标就向左子节点进行递归查找,一步步找到目标应该在的位置,也就是递归到出现null节点的位置,就是val目标节点应该放的位置,然后新建这个目标节点,返回给上一层递归接住。对于题解中的第五种情况,可以是将右指针放在左子树的最右边的节点的右指针,或者是将左指针放在右子树的最左边的节点的右指针。因为节点6作为父节点,左右两边的范围是[0,6) (6,9], 肯定是公共父节点。

2024-07-13 02:18:33 207

原创 day19打卡

这题自己做的时候,出现了几个遗漏的思路:1、使用迭代法的时候,判断当前节点和pre节点是否相同,需要push的是pre节点 2、结束的时候由于没有新节点进行比较,所以最后出现的众数会被遗漏,看了答案才发现没必要这么复杂,根本不用纠结是 出现和前一个节点相同的时候判断 还是 出现不同节点的时候判断 而是每访问一个节点的时候就要进行判断。面试又一次失败,需要自我治愈一下,屡战屡败、屡败屡战.......236. 二叉树的最近公共祖先。501.二叉搜索树中的众数。

2024-07-12 22:57:01 342 1

原创 day15补卡

我的代码思路是传入子节点状态,左节点还是有节点,如果是叶子并为左节点则加入,题解则是通过当前节点去判断左子节点是不是叶子节点,再依此遍历全树,但代码更简洁。222.完全二叉树的节点个数(优先掌握递归)404.左叶子之和 (优先掌握递归)前两题思路和解答一致。

2024-07-08 20:34:39 300

原创 day5补卡

模拟基本可以解决,但是需要注意细节,对于返回的节点,不能直接返回head,已经被交换了,需要返回dummy->next。同样,为了统一处理需要使用dummy节点,返回头节点的时候,有可能头节点被删除,所以需要返回dummy->next。19.删除链表的倒数第N个节点。24. 两两交换链表中的节点。

2024-06-26 18:01:52 189

原创 day4代码随想录

这道题和之前做的剑指offer JZ76 删除链表中重复的结点 类似,都是确认了下一节点不是目标值,或者当前是重复节点的目标值,才会跳到这个节点,否则当前节点的下一节点一直往后移动。

2024-06-24 21:56:34 253 1

原创 MakeFile与CMake学习

target为生成的目标文件,prequest为所需的依赖的文件,command为会执行的命令,当检测到依赖的文件比target文件更新的时候,会自动重新编译。如果检测到部分源文件更新后,make才会重新编译这个源文件。为了解决多次生成-o文件,后链接成为exe文件。

2024-04-03 21:05:11 162

原创 linux命令

chmod修改权限,通过+或者-来增加或者减少权限,或者指定三个二进制数字,代表三个位的权限,g-文件属组, o-其他人,u-文件属主,a-所有人,权限-rwx,最前面代表的是文件类型和权限 d/l/-(目录/链接/文件) 用户权限 同组成员权限 其他组成员权限。创建的是硬链接,磁盘中只保存一份,如果存在硬链接,则无法删除源文件,并且两个文件内容一致。a-在光标后插入、i-在光标所在位置插入、o-在光标所在位置的下一行插入。cat---显示所有、more--分页查看文件、less--文件查看。

2024-03-19 20:22:41 344

原创 QT菜单项自定义

手动创建类QWidgetAction,需要重写虚函数creatWidget(QObject *parent)完成自定义菜单项,当QToolBar调用addAction时,调用该虚函数,并作为父部件参数传入。对于QMenu(最上面的菜单项),QToolBar(下面的工具栏),不使用ui编写代码编辑菜单项以及工具栏中,简单做个笔记。

2024-02-26 21:52:50 504

原创 QT打印及打印预览

实际打印时可以使用与生成预览时完全相同的代码,包括调用QPrinter::newPage()在预览中开始一个新页面。将插槽连接到paintRequested()信号,在该信号中绘制传递到插槽中的OPrinter对象。您可以使用现有的QPrinter对象构造一个OPrintPreviewDialog,也可以让QP rint preview Dialog为您创建-个OP rint Dialog,它将成为系统默认打印机。调用OPrintPreviewDialog::exec()以显示预览对话框。

2024-02-25 21:08:40 2587

原创 QT正则表达式

匹配后捕获的结果按照小括号分组,小括号加?:为非捕获,即不会捕获该分组。

2024-01-03 21:34:10 418

原创 QT容器学习

isNull()和isEmpty()都是QString类中的函数,用于判断字符串是否为空。其中,isNull()函数用于判断字符串是否为null,即字符串是否被初始化,而isEmpty()函数用于判断字符串是否为空串,即字符串是否包含字符。由于QString使用的是16位的Unicode,QChar为了与其保持一致,占两个字节sizeof(QChar)==2。执行的是隐式共享,当数据相同时执行浅拷贝,当其中一个改变时执行深拷贝,大大减少了内存消耗,数据块的引用计数。类的成员函数,用于将数字转换为字符串。

2023-11-27 21:02:58 548

原创 QT5学习

一个属性的行为就像一个类的数据成员,但它有通过元对象系统访问的附加功能,而元对象是静态属性,只会被初始化一次,所以当定义多个类的时候,不会将属性也定义到新的类中,因为属性不会也被定义到元对象中。一个信号可以绑定(响应)多个槽函数,多个信号也可以连接同一个槽,信号函数可以connect触发另一个信号函数,槽函数中的参数可以比信号函数的参数少或者相同,但是不能比信号函数的参数多。这个函数的原型就这样,试着看了一下有8个该函数的重载,第一个参数发送者,第二个信号,第三个接收者,第四个接收者的响应函数。

2023-10-31 21:01:49 61

原创 C++异常处理机制

可以在main中使用catch捕捉到(根据throw出的异常类型进行相应的捕捉)throw异常抛出,会直接返回给main,不会返回给上一级函数。

2023-10-22 16:01:48 64

原创 C++万能择优器

3、写在不同.h和cpp中,和以上类似,但是!在main中使用的时候需要#include"A.cpp"而不是#include"A.h"普通函数与模板函数重载,会调用普通函数 ,如果必须使用模板函数需要加:Max(x, y);一般会把类模板的实现文件定义为A.hpp, 在main中引用时#include"A.hpp"如果函数模板会产生更好的匹配(普通函数存在参数类型的隐式转换的时候),使用函数模板。子类和父类都是类模板时,子类的虚拟类型可以传递到父类中。类模板必须指明数据类型,定义的时候就要写好。

2023-10-21 16:51:05 85

原创 C++多态

override关键字,覆盖父类virtual函数,用来提示程序员,不写的话效果一样,同时防止子类中函数名写错,所以写是好习惯,只需要在函数声明中使用。cout<<10<<hex<<10<<oct<<10<<dec<<10<<endl在c++中表示么意思?多态的本质,在形式上可以用统一的父类指针做一般性的处理,实际执行的时候可能指向子类对象,使程序更加灵活。如果基类指针指向的是子类对象,那么先调用子类的析构函数,再调用父类的析构函数。对象的内存,只存储虚函数表和数据成员(类的静态数据成员,存储在数据区)

2023-10-14 17:27:17 44

原创 运算符重载

重载后置自增运算符时,多了一个 int 型的参数,增加这个参数只是为了与前置自增运算符重载函数有所区别。此外,没有任何作用,在定义函数的时候,不必使用此参数,因此,可以省略写参数名。只需在括号中写 int 即可。编译系统会在遇到后置自增运算符时,自动调用此函数。存在成员函数或者友元函数实现两种,注意当参数为const类型的时候,只能调用const函数。2、双目运算符重载:+-*/,至少需要一个自定义对象作为参数。4、赋值运算符重载,=,只需定义拷贝构造函数即可。1、单目运算符重载:有前置和后置两种。

2023-10-14 10:20:43 61

原创 char*/char[] 和string问题

8 string.length()没有包含结束符,使用strcpy把string.c_str()赋值给char*的时候,长度需要加1。3) char*转char[]:不能直接赋值,可以循环char*字符串逐个字符赋值,也可以使用strcpy_s等函数。4) string转char[]:不能直接赋值,可以循环char*字符串逐个字符赋值,也可以使用strcpy_s等函数。5.string.c_str() 转 const char* 时, 会在字符串末尾 自动补“\0”

2023-10-09 22:10:56 120

原创 C++位图算法

一个字节8位,取0或者1,代表1~8数字是否存在,注意以下和二进制无关,改位赋1,或运算*p | (1 << (i % 8)),查看该位是否为1,与运算*p & (1 << (i % 8))

2023-09-14 09:00:14 72 1

原创 C++IO类库

头文件

2023-09-11 19:13:12 48

原创 C++学习模型泛型类、dll导出与导入

_declspec(dllexport),使用extern "C",指定编译和连接标准,C++中支持重载,C语言不支持,加了__declspec(dllexport)后,会生成lib文件,不会生成.def文件。__declspec(dllexport)与__declspec(dllimport),将dll内部类、函数、数据导入、导出,即可以将dll中的代码插入到当前代码。__declspec(dllimport),导入的时候可以不适用头文件。

2023-09-10 12:13:33 142 1

原创 stringstream的使用

C++ stringstream 简单使用_原来是枫哥呀!的博客-优快云博客

2023-08-20 22:05:12 42 1

原创 C++面向对象

1.调用函数时,实参是对象,形参不是引用类型如果函数的形参是引用类型,就不会调用拷贝构造函数。自动合成的拷贝构造函数存在风险(是浅拷贝 ),当成员是指针的时候,指向同一个地址。1)白动调用 (在创建新对象时,自动调用)4)可以有多个构造函数 (即函数重载形式)2.函数的返回类型是类,而且不是引用类型。3.对象数组的初始化列表中,使用对象。一般开发项目使用类中使用内联函数、2)构造函数的函数名,和类名相同。类内初始值,C++11才支持。3)构造函数没有返回类型。

2023-08-18 21:02:23 54 1

原创 ASP.NET WEB 学习

在View页面编辑HTML标签的时候,ASP.NET MVC 为我们准备好了可以辅助我们写这些标签的办法,它们就是HtmlHelper。App_Start 目录下的BundleConfig.cs文件用处。

2023-07-15 17:49:05 70 1

原创 C++函数对外可见

不同cpp中的函数可以调用,是对外可见的,只需要在调用的cpp中声明函数即可,故可以把函数声明放到头文件中。函数不加extern和加extern一样,作用域都是文件外,除非函数前加了static,作用域变为本文件。

2023-07-09 09:49:28 130 1

原创 类型定义和宏定义的区别

【代码】类型定义和宏定义的区别。

2023-07-08 16:44:45 53 1

原创 C++枚举类型

不指定元素等于多少的话,就是从0开始递增 ,其实enum就是一个整形。

2023-07-06 21:44:27 51 1

原创 C++结构体指针

结构体指针访问元素的方式有两种,一种是地址解引,另一种是直接使用地址->访问。

2023-07-05 16:59:34 87 1

原创 C++宏定义替换函数

带参数的宏定义不会开辟栈空间,效率会更高。

2023-07-05 13:49:26 197 1

原创 C++内存泄露检测工具

VisualC++ debugger 和 CRT库。第三步:在代码结束处输出内存泄露信息。第二步:接管new操作符。第一步:包含以下头文件。

2023-07-04 16:15:06 218

原创 C++关于变量生命周期会存在的问题

以下代码存在问题,sum为栈中的变量,当调用结束后,sum的生命周期结束,后续内存有可能会被其他覆盖。外部函数返回地址的时候,需要注意这个变量的生命周期,如果是静态的就没问题。正确的写法,应该使用堆,动态内存。

2023-07-04 11:18:47 60

原创 C++变量的四种存储类型

register---存放在寄存器,C++的register关键字已经优化,可以打印地址,变成了auto变量,寄存器变量不能定义为全局变量。自动变量(auto)、静态变量(static)、外部变量(extern)、寄存器变量(register)static---全局可访问,但仅限本函数内,并且多次调用函数只会初始化一次。extern---声明的外部变量的可以在其他cpp文件中使用。auto---函数中的非静态变量。

2023-07-04 10:42:33 71

原创 C++动态内存

3、全局/静态区(static):全局变量和静态变量的存储是放在一起的,static变量定义在函数内多次调用只会初始化一次,static的访问权限只会在这个函数内部,很好的解决了全局变量访问权限的问题。1、动态内存即可操作的内存,为堆(heap),windows系统下限值为2G, new一定要用指针来接,因为返回的是地址。2、栈区:编译器自动分配释放,存放函数的参数值、局部变量等,一般会有大小限制,一般是1M-2M。用于内存不够用的时候,申请一个新的内存,然后将内存完整的拷贝到另一个内存。

2023-07-03 22:42:08 53 1

原创 C++读取文件规范化写法

【代码】C++读取文件规范化写法。

2023-07-03 15:44:36 189 1

原创 void 类型指针

【代码】void 类型指针。

2023-07-02 13:43:45 52 1

原创 库文件学习

头文件中包含了函数声明、宏定义、结构体定义等信息,而库文件则包含了函数的实现,动态链接库文件(Dynamic Link Library,缩写为DLL)是一种包含函数和数据的模块,它可以被其他模块(应用或DLL)使用。库文件用的时候,头文件(.h)是编译时必须的,库文件(.lib)是链接时需要的,动态链接库文件(.dll)是运行时需要的。3、右键项目->属性->配置属性--链接器--输入--附加依赖项--编辑--写如.lib文件名(模式改为Release)2、右键头文件->添加->现有项->.h文件。

2023-05-26 19:37:29 55 1

原创 VC++基础学习

VS调试时,继续:跳过中间至下一个断电,逐语句:会进入函数一步步执行,逐过程:执行下一行,跳出:跳出函数,黄色箭头表示当前语句还没执行,执行到前一句。sizeof(string)在每个库里输出都是固定的(VS是28),sizeof(string[])输出总分配空间,cin.fail()来判断当前的输入的类型和预期的是否相同,如不同cin.fail()返回true;cin.ignore() 也是删除缓存区中的数据,但是参数控制更加精确。cin.sync()清除缓存区的数据流。输入流cin.fail()

2023-05-26 19:29:11 1034 1

原创 异常数据过滤算法MATLAB

莱因达准则又称3sigma准则:本方法适合样本数据服从正态分布,且样本量不小于8。根据莱因达准则,当观测数据服从正态分布时,残差落在3倍标准差[-3,3]的概率超过99. 7%,落在此区域外的概率不超过0. 3%。滑弧法:当采样数据不满足平稳性正态性要求时,可基于状态方程并采用卡尔曼滤波、分割递推算法或最大似然法来识别和剔除异常值,但这些算法比较复杂。该准则采用极差比的方法,可得到简化而严密的结果,从而避免了需先求出样本标准差的麻烦。格鲁布斯法适合样本数据服从正态分布,且样本量不小于3。

2023-05-07 16:47:47 5408 4

空空如也

空空如也

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

TA关注的人

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