自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++入门———命名空间及输入输出

C++的命名空间及输入输出

2024-11-25 20:02:43 1039

原创 C++——模板初阶(函数模板,类模板)

ps:不建议模板定义和声明分离,会出现链接错误。

2025-02-07 12:23:55 606

原创 c++内存管理——malloc calloc realloc free new delete operator new operator delete

new delete 和 malloc free 最大的区别是new除了开空间还会调用构造函数,delete除了释放空间还会调用析构函数。(对内置类型基本一样)1.调用operator new函数申请空间。2. 在申请的空间上执行构造函数,完成对象的构造。

2025-02-06 12:30:17 982

原创 类和对象(下)——类型转化 static成员 内部类 匿名对象 拷贝对象优化

类型转化 static成员 内部类 匿名对象 拷贝对象优化

2025-02-03 11:53:32 910

原创 C++——缺省参数、函数重载、引用、inline

用inline修饰的函数叫做内联函数,编译时C++编译器会在调用的地方展开内联函数,这样调用内联函数就不需要建立栈帧从而提升效率。

2025-02-01 11:54:12 628

原创 类和对象(中)---默认函数

构造函数的功能是实例化对象时初始化,并不是创建对象。类似于我们用c语言来写栈和堆时的Init赋值运算符是一个默认成员函数,用于完成两个已经存在的对象直接的拷贝赋值(与拷贝构造最大的不同,拷贝构造是对一个对象拷贝初始化给另一个要创建的对象。

2025-02-01 11:49:27 955

原创 C++入门——类和对象(上)

类的定义和格式,访问限定符 ,类域,实例化

2025-01-20 22:36:22 793

原创 排序详解(史上最全)

插入排序,选择排序,交换排序,归并排序,计数排序

2024-11-24 20:05:22 971

原创 详解二叉树(2)--二叉树的链式结构(递归的暴力美学)

二叉树的链式结构实现,二叉树的遍历,二叉树的结点个数及高度

2024-11-13 20:21:58 142

原创 详解二叉树(上)---堆

树的概念,二叉树的概念和性质结构,堆的概念和实现

2024-11-13 20:18:24 999

原创 队列和栈题目代刷

有效括号,队列实现栈,栈实现队列

2024-11-07 18:56:59 987

原创 单链表题代刷--环形链表及随即表的复制

环形链表篇,随机链表的复制

2024-10-30 20:49:39 292

原创 操作符详解

:加;-:减;*: 乘;/:除;如果双方操作符两端是整数那么结果会自动强制转化为整数;%:取余;

2024-10-30 18:22:37 409

原创 单链表题带刷(二)

判断链表是否为回文结构,判断是否为相交链表

2024-10-30 17:36:16 391

原创 单链表题带刷

三指针,快慢指针,哨兵位解链表问题

2024-10-26 22:47:31 624

原创 算法带刷——顺序表的应用(双指针)

巧用双指针

2024-10-26 15:41:49 413

原创 算法带刷——轮转数组

每一次轮转时都将最后一个保存,然后将前一个的数值移到后面一个,直到数组的第一个为空时,我们将最先存储的数据放到第一个中,这样完成了一次轮转,最后用循环来控制次数。我们发现轮转k次就是把倒数第k个后面的(即把后k个)的数据放在前面,再将前size-k个数据放在后面的位置,我们可以定义一个新数组来完成以上操作。倒数第k个后面的(即把后k个)的数据放在前面,再将前size-k个数据放在后面的位置,可以合并成一个操作。这个方法将时间复杂度降到o(n),空间复杂度为o(1)

2024-10-21 17:13:48 377

原创 详解队列(带你五分钟了解队列)

概念:只允许在一段进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的性质。入队列:进行插入操作的一端称为队尾出队列:进行删除操作的一段称为队头。

2024-10-21 14:53:27 583

原创 详解栈(五分钟快速了解栈)

栈是一种特殊的的线性表,其只允许一段插入和删除元素的操作。进行数据插入和删除的一端叫栈顶,另一端叫做栈底。栈遵循先进后出的原则。压栈:栈的插入操作叫做进栈、压栈、入栈。入数据的地方在栈顶。出栈:栈的删除操作叫做出栈。删除数据的地方在栈顶。栈的底层结构:一般是数组(其实数组和链表都可以实现栈,但链表在尾插入时时间复杂度为o(n),用数组来实现更有优势,代价更小)

2024-10-20 15:42:11 401

原创 详解双向链表

这里的头插是指插在哨兵位后,如果插在哨兵位前面相当于尾插。详情请看我的上一篇文章。除头结点外没有其他结点。

2024-10-19 15:31:24 558

原创 详解单链表

(1)链式机构在逻辑上是连续的,在物理结构上不一定连续(2)结点一般都是从堆上申请(3)从堆上申请来的空间,是按照一定策略分配出来的,每次申请的代码可能连续,可能不连续。

2024-10-18 12:33:55 193

原创 详解顺序表

五分钟快速了解顺序表

2024-10-14 14:31:59 289

原创 算法复杂度

m因为在不同的环境、编译器等情况下每次算法运行的时间都会有所不同。我们没有办法算出实际使用时间所以我们假设每一条指令的时间是相同的,执行时间就和执行指令次数和指令执行时间成正比,我们就可以用执行次数来表示程序执行的快慢。即用T(N)函数来表示。计算算法在运行中因为算法的额外临时开辟的空间,因为常规情况下每个对象大小差异不会很大,所以我们用变量的多少来计算空间复杂度。(因为函数运行所需要的栈空间(存储参数,局部变量等在编译时已经确定好了,因此空间复杂度主要通过函数在运行时显示申请的额外空间来确定))

2024-10-13 15:02:07 413

原创 指针之我见(史上最全)

指针也是一个变量,也有地址,我们把指针的地址存储起来就叫二级指针.我们把数组的地址传给指针,指针里存放着数组的地址就叫数组指针。形如int (*p)[10], 该指针的类型是int(*)[10],*p表示p是一个指针,int [10]表示数组指针所指向的是一个大小为10个整形的数组我们将函数的地址传给指针,指针里存放着函数的地址就叫函数指针。形如:int(*pa)(int x, int y)

2024-08-12 15:47:52 537

原创 C语言初级扫雷小游戏详解

因为我们的扫雷小游戏的代码有些长,为了不显得太繁杂,我们分为test.c game.c game.h三个文件test.c写主程序。game.c写游戏的程序。game.h写头文件。

2024-07-31 17:55:08 995

原创 函数之我见

在写程序的过程中可能有一些功能需要实现但并没用与之对应的库函数就需要我们自定义函数,其实库函数就是我们经常能用到的一些函数,官方进行了统一不需要我们自己写大大提升了效率。

2024-07-25 23:22:44 662

原创 数组之我见

数组是一个相同类型数据的集合:1.数组存放一个或多个数据,但不为0。2.存放数据的类型是相同的。数组分为一维数组、二维数组和多维数组。

2024-07-21 22:08:45 356

原创 循环之我见

while(表达式)语句;

2024-07-20 22:18:22 248

空空如也

空空如也

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

TA关注的人

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