自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法2:滑动窗口(上)

算法2:滑动窗口(上)

2024-05-23 03:15:24 282

原创 每日两题5

【代码】每日两题5。

2024-05-19 10:04:47 101

原创 【C++】智能指针

智能指针

2024-05-11 11:20:50 967

原创 【Linux】动静态库

此外动态链接被使用时,除了在编译时需要和静态库一样告诉编译器库地址,更要在程序运行时告诉生成的可执行程序其地址,那为什么系统官方库不需要告诉呢,其实不然,都是要告诉的,不过系统一般将官方库采用环境变量法,会默认自己配置好;回想链接操作是在告诉编译器动态库的位置,但我们知道动态库在被链接的时候只是在程序占了个位置,本身内容并没有被加入到可执行程序中,需要程序运行的时候再去自己找该部分内容,需要告诉程序你的库在哪里,也可以把你的库放入操作系统仿官方库的位置(不建议,会污染官方库),为地址空间的地址;

2024-05-01 21:40:42 979

原创 【Linux】make 和 makefile

【代码】【Linux】make 和 makefile。

2024-04-27 16:15:05 208

原创 【C++】类型转换

原因:编译器优化,它对const变量认为不会变,故而直接加载到了寄存器(有的编译器直接用宏那种处理方式直接替换,如vs),读的时候它会去寄存器去取(即使a的值在内存中已被修改);通过监视发现,明明end变成-1,但循环仍会进去,这里其实就是比较的时候发生了隐式类型转换,比较的时候end由int变为unsigned int;此时C++后来在这里做了一些新的方法(旧的不能改)------四种类型转换,接着往下看…可见C语言的写法也会将切片的偏移量在向回转的时候,跳回去且不受虚函数限制;

2024-04-27 12:16:57 579

原创 重温数据库-修改表-ALTER TABLE

解释:本文中属性与字段同义。

2024-04-25 21:42:46 170

原创 【C++】抽象类 与 C++

若子类没有实现纯虚函数,则子类成为抽象类。. 派生类必须实现纯虚函数的具体功能。. 纯虚函数被实现后成为虚函数。. 抽象类只能做基类被继承。

2024-04-25 20:36:26 203

原创 【Linux】小知识点温习---命令

许多常见命令会用,但是很少注意他们的区别;亦或在学习中使用较少,容易忘记,今天做一个回顾。

2024-04-21 17:13:42 567

原创 每日两题4

【代码】每日两题4。

2024-04-19 18:41:55 289

原创 计算机网络1-TCP和UDP

同:都工作在传输层,目标都是在程序间传输数据(文本、视频等等),都是2进制数据;区别:TCP:电话,基于连接,UDP:书信,基于非连接,

2024-04-19 16:54:51 795

原创 算法1:双指针

算法1:双指针。

2024-04-18 09:31:07 167

原创 每日两题3

【代码】每日两题3。

2024-04-18 09:19:37 363

原创 【C++】unordered_set和unordered_map

经检测,以上代码有个小bug,可能会导致数据打印时无法跳出迭代器,形成死循环打印;从逻辑上讲,HashTable应该给迭代器开放权限,如下设置一个友元类即可。在这里我们是不是应该对哈希表的大小取模,而不是对现在的有效数据个数取模。HashTable和其迭代器互相调用。代码实现标准化,实现[ ]重载。因为是模板故必须带参数。提示:错误点在该段代码中。

2024-04-16 19:23:14 179

原创 每日两题2

以上代码一可以返回正确答案;但存在错误修改闲置背包问题,逻辑思维不严谨;这道题只需要在上道题的基础上加一个障碍物判断即可,代码实现也是如此。<这里的映射关系非常重要>注意:注意这里的映射关系。

2024-04-16 15:21:36 274

原创 每日两题1

可以试着倒着走,时间及空间复杂度不变;空间复杂度可以优化为O(1);

2024-04-14 16:01:55 424

原创 【C++】哈希

在C++98中,STL提供了底层为红黑树结构的一系列关联式容器,在查询时效率可达到logN,即最差情况下需要比较红黑树的高度次,当树中的节点非常常多时,查询效率也不理想。最好的查询是,进行很少的比较次数就能够将元素找到。在C++11中,STL又提供了4个unordered系列的关联式容器,这四个容器与红黑树结构的关联式容器使用方式基本类似,只是其底层结构不同。unordered_xxx系列与map和set容器的用法上几乎没有任何区别;

2024-04-12 17:08:19 814 2

原创 【C++】红黑树

红黑树,是一种二叉搜索树.....

2024-04-09 22:57:07 289

原创 【C++】AVL树

6.向上更新平衡因子时,当parent的平衡因子为0时,不需要再向上更新(同4)

2024-04-06 14:47:19 178

原创 【C++】函数模版(1)

以上代码表示交换相同数据类型的两个数据,虽然C++支持函数重载,但这种写法重复性的工作太多,以上数据除了数据类型不无二致,我们何不自己写一个函数模版,让其编译器根据数据类型自己去匹配呢?4.使用函数模板时,如果是自动类型推导,不会发生隐式类型转换,如果显式指定了函数模板的数据类型,可以发生隐式类型转换。编译的时候,编译器推导实参的数据类型,根据实参的数据类型和函数模板,生成该类型的函数定。3.使用函数模板时,推导的数据类型必须适应函数模板中的代码。6.函数模板支持重载,可以有非通用数据类型的参数。

2023-10-30 17:29:00 70

原创 【数据结构】双链表

链表的插入时间复杂度O(1),链表不能随机访问,数组通过下标可以。

2023-10-27 20:06:36 59

原创 神奇现象<1>

因编译器的不同,相同问题有的ide会报错

2023-10-21 14:15:50 88 1

原创 2.两数相加

【代码】2.两数相加。

2023-10-17 20:30:46 50

原创 21. 合并两个有序链表

通过思考,链表已经是栈中的数据,我们只需要将其连接起来,不用在函数初始时申请空间。当有一个空链表传入时,应该返回另一个不为空的链表,但该版本代码直接返空;所标部分的list可能为空,故不能在使用其next的值;原因:list1、list2本身可能为空,需要先判断。改进:简单粗暴,直接和ret一起判断是否为空。测试用例全部通过,但提交代码仍显示执行错误;

2023-10-17 16:36:29 49

原创 88. 合并两个有序数组

合并有序数组

2023-10-12 09:12:30 27

原创 【Java初阶】2

长度可以是变量。

2023-10-10 13:16:02 38

原创 【Java初阶】熟悉ide环境

class字节码文件(二进制文件)cd 进入某文件dir 查看当前目录的文件jva虚拟机有class,到处运行字符串数组,数组名为args(也就是说args可以改),java的数组写法与C语言有所区别;类似于C语言的args.length是java自动求得数组元素个数,不用像C语言一样求得其大小,这也算是java的神奇之处,在控制台情况下可以传参,ide环境暂时不会,执行会打印出:nihao。

2023-10-10 13:15:21 37

原创 操作系统(1)

操作系统笔记

2023-10-10 13:11:48 39

原创 数据结构(第一站)

复杂度作为一个常识性东西,理解就行,不用过于深究

2023-10-10 13:10:11 24

原创 数据库(基础篇)挑战(1)搭建一个简易的成绩管理系统的数据库

现需要构建一个简易的成绩管理系统的数据库,来记录几门课程的学生成绩。数据库中有三张表分别用于记录学生信息、课程信息和成绩信息。数据表结构如下:学生表(student):学生 id 、学生姓名和性别课程表:课程 id 和课程名成绩表:成绩 id 、学生 id 、课程 id 和分数。

2023-09-24 22:45:00 529

原创 数据库(基础篇)<1>SQL介绍及安装

若没有安装,安装方法如下:

2023-09-24 19:45:00 37

原创 数据库(基础篇)<2>创建数据库并插入数据

经过本次实验,已经有了一个名为 mysql_shiyan 的数据库,其中有两张表,已经向其中插入了一些数据。务必完整地操作一遍,以熟练 SQL 语句的使用。下一节我们将进入 SQL 约束的学习。

2023-09-24 19:45:00 723

原创 数据库(基础篇)<3>SQL的约束

本节实验中通过一个数据库实例了解了主键、默认值、外键、非空、唯一这几种约束的特性,这几种约束都是最常见的,需要仔细理解每种约束的含义及使用场景。

2023-09-24 19:45:00 66

原创 【C语言】预处理

int main()//编译时的信息return 0;int main()//编译时的信息 写入日志文件//追加if (!pf)fopen");return 1;//写文件//关闭文件fclose(pf);pf = NULL;return 0;在VS中实行预处理到文件,打开生成的.i文件注意:1.定义语句后面不要加;可以替换参数(Linux环境操作较为方便;许多C的编译器提供了一种能力,允许在命令行中定义符号。用于启动编译过程。

2023-08-29 23:40:07 38

原创 【C语言】文件操作

在文件读取过程中,不能用feof函数的返回值直接用来判断文件的是否结束。将地址pf里面的内容读到结构体变量s里面,最多读2次,大小为结构体。将地址s里面的内容写进pf里面,写一次,大小为结构体。可以分别与scanf 和 printf 对比学习。file.txt 的总大小 = 19 字节。执行该操作后,文件指针就会返回到开始位置。让文件指针的位置回到文件的起始位置。刷新缓冲区中的内容到stdout中。

2023-08-27 17:19:04 63

原创 【C语言】动态内存管理

void* calloc(size_num,size_t) 返回值为空指针类型 或 NULL, size_t为申请空间大小 单位 字节 size_num 表述数量 比malloc多一个置零的功能。void* realloc(void* ,size_t) 传一个地址,该地址必须是动态申请空间的起始地址,size_t表示申请空间大小 ,返回值为void指针类型 或 NULL,2.原空间后面没有足够的地址可以申请,在内存中重新找一个空间申请,然后释放掉原来的空间。6.忘记释放(内存泄漏)

2023-08-24 11:17:59 32

原创 【C语言】自定义类型

自定义类型:结构体,枚举,联合体

2023-08-20 16:49:53 73 2

原创 【C语言】字符串与内存

字符串与内存

2023-08-19 20:38:37 67

原创 【C语言】指针进价(综合)

1.sizeof(数组名),表示整个数组,计算整个数组的大小。2.&数组名,表示整个数组,取出整个数组的地址。注意:strlen函数的参数是指针变量。数组名通常都是首元素地址。这里采用了的逗号表达式。

2023-08-13 00:33:06 82 1

原创 【C语言】指针进阶(下)

平常自己写的类似于下列代码的排序,只能是按一种类型排序,当排序的的条件变化是就得重新写符合要求的代码。故对这里的代码再定义一个新函数,通过传参来进行函数调用即可。是一个库函数,基于快速排序算法实现的一个排序的函数。定义:一个(指向(函数指针的)数组的)指针。当然,回调函数的参数形式必须相同。定义:通过函数指针调用的函数。

2023-08-10 14:37:01 46 1

空空如也

空空如也

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

TA关注的人

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