自定义博客皮肤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)
  • 收藏
  • 关注

原创 二叉树的分层遍历、栈的压入弹出序列

本章主要来讲解两个OJ题,针对每个OJ题我分三部分来解决,分别是题目解析(主要弄清楚题目要求我们解决什么问题),算法原理,代码编写,接下来让我们进入正题。

2024-08-24 16:25:41 433 37

原创 迭代器失效

会引起其底层空间改变的操作,都有可能是迭代器失效,比如:resize、reserve、insert、assign、push_back等对象在扩容后迭代器还指向原空间,而原空间已经被弃用(内存已释放),再使用迭代器的话程序就会崩溃。

2024-08-19 18:13:40 578 58

原创 string模拟

string本质可以理解为储存char类型的顺序表,其中string的迭代器用一个char*就可以解决。所以string类成员变量如下:这里用了一个命名空间是为了区分库里面的string。接下来就对需要实现的函数一一讲解。

2024-08-17 12:01:22 945 65

原创 模板初阶(详解)

这样每个类型交换都需要写一个函数重载,其中代码的重复率很高,只有类型不同而逻辑都一样,写起来也非常的繁琐,那我们能不能写一个通用的函数告诉编译器一个模版让编译器根据不同的类型利用该模版来生成代码呢?这就是本章的主题——模板。编写与类型无关的通用代码,是代码复用的一种手段。模板是泛型编程的基础。模板分为函数模板和类模板,接下来我们分别来详细学习。

2024-08-11 17:02:08 2369 92

原创 类和对象(下)

我们不写,编译器默认⽣成的构造,对内置类型成员变量的初始化没有要求,也就是说是否初始化是不确定的,看编译器。主要是完成清理工作,这个函数会在对象的主调函数结束的时候编译器会自动调用释放内存,一般这个函数都不需要自己写编译器会默认生成,对于动态申请的内存空间还需我们手动写一个析构函数去进行内存的释放。1.初始化列表是每个成员变量定义的地方,在每定义一个对象的时候都会走一遍初始化列表,而初始化列表是编译器默认生成的,当然也可以自己写一个来替代作初始化的构造函数。可以理解为你是我的朋友,我的私有可以给你用。

2024-08-04 11:53:54 1181 76

原创 类和对象(上)

类和对象,this指针,对象的大小,实例化,类域,访问限定符,类的定义,public,private,protected

2024-07-27 15:12:22 1379 83

原创 C++入门基础

命名空间,c++输入输出运算符,缺省参数,函数重载,引用,内联函数,inline,作用域,const常引用

2024-07-22 08:43:32 2173 81

原创 【排序算法】—— 计数排序

计数排序,顾名思义就是记录数据出现的次数进行排序,空间复杂度为O(N)。只能用于整型,对于比较集中重复率比较高数据更为适用。

2024-07-18 19:13:00 1360 65

原创 【排序算法】—— 归并排序

归并排序,排序,归并排序非递归,有序数组排序,外排序算法

2024-07-15 19:14:26 1394 58

原创 【排序算法】—— 快速排序

快速排序,霍尔法,挖坑法,前后指针法,小区间优化,三数取中,快速排序非递归,快速排序递归,快速排序的优化,快速排序提高效率的方法

2024-07-07 22:43:39 2885 72

原创 【排序算法】—— 希尔排序

希尔排序是简单插入排序的一种升级版,它也是用了插入的思想,而插入排序相比冒泡排序和选择排序的效率要高的多,再将它优化为希尔排序后效率跟原来根本就不在一个级别。接下来我们就一起来学习一下希尔排序。

2024-06-25 09:24:27 1321 87

原创 股票交易系统

双线程,控制台程序设置,股票,光标设置,股票波动模拟,qsort排序

2024-06-17 12:41:24 1434 86

原创 贪吃蛇双人模式设计(2)

小游戏,贪吃蛇,双线程,玩家复活,锁,临界区,资源共享问题,贪吃蛇小游戏双人模式

2024-06-10 11:30:06 2774 95

原创 二叉树创建和遍历

二叉树遍历,广度优先遍历,深度优先遍历,层序遍历,二叉树总节点个数计算,二叉树深度计算,叶子节点个数计算

2024-06-03 10:50:31 1402 133

原创 堆(建堆算法,堆排序)

堆,向上调整,向下调整,堆排序,建堆算法,堆的储存,堆的创建,找出最小的K个数,顺序表来储存堆

2024-05-27 07:45:48 1258 155

原创 二叉树(详解)

二叉树,完全二叉树,堆,满二叉树,树形结构,父子结点下标计算,树的储存现实中的二叉树,堆的计算,二叉树的储存,父结点,子结点

2024-05-23 09:55:46 1583 158

原创 栈和队列OJ题

如果要用队列实现栈的话,使用一个队列是肯定不行的,队列结构是先进先出,栈结构是先进后出,所以我们要做的就是使用两个队列实现元素的先进后出的功能,要实现出栈操作我们只要,把左边栈的元素逐个导入右边队列中,直到剩下最后一个,再将它取出相当于出队操作。End和Head指向同一位置的时候栈为空的情况,比如原来队列需要的是k个空间,那么我们可以创建k+1个空间,那么我们就可以。用栈实现队列也就是使用栈来实现先进先出的效果,该操作用一个栈是无法完成的,我们考虑用两个栈,栈a用来模拟入队操作,栈b来模拟出队操作。

2024-05-20 10:03:58 867 77

原创 队列(详解)

队列(Queue)是一种常见的数据结构,它按照先进先出的原则管理数据。这意味着最先进入队列的元素将被最先移出队列,类似于现实生活中排队的场景。在队列中,数据项被添加到队列的一端,称为队尾,而从队列中移除数据项的操作则发生在另一端,称为队首。新元素被添加到队列的尾部,并且从队列中移除元素时,总是从队列的头部开始。队列常用于需要按顺序处理数据的场景,比如任务调度、缓冲等。

2024-05-12 21:52:31 1102 101

原创 栈结构(详解)

栈结构,数据结构,链表,顺序表,压栈,出栈,先进后出,销毁栈,取栈顶元素,LIFO

2024-05-10 13:45:27 852 166

原创 链表经典面试题

反转链表,回文链表,相交链表,环形链表,带环链表,合并两个有序链表,双指针,快慢指针,面试题,栈空间,追击问题,中间节点的查找,暴力算法,结构体指针数组,数据结构,OJ题

2024-05-06 11:51:01 3171 203

原创 贪吃蛇小游戏(1)

游戏 获取按键状态 控制台坐标 宽字符 本地化 睡眠 光标的隐藏 随机数 柄 动态效果 双线程 锁 有趣的小游戏 c语言小游戏 控制台窗口设置 贪吃蛇双人模式 坐标设置

2024-04-29 10:05:14 3472 215

原创 控制台程序设置

控制台程序设置 光标设置 柄的获取 获取按键情况 坐标设置 COORD GetStdHandleCONSOLE_CURSOR_INFO​ GetConsoleCursorInfo ​SetConsoleCursorInfoGetAsyncKeyState ​本地化 ​setlocale函数​

2024-04-22 12:07:32 4126 170

原创 链表创建的陷阱与细节

链表 c语言 java c++ 数据结构 链表传参问题 优先级 二级指针传参 链表的结点前驱丢失问题 链表的缺陷 指针做参数的目的 头插 尾插 链表的增删查该

2024-04-15 10:06:32 1434 130

原创 顺序表(详解)

线性表是指在逻辑结构上是线性的,线性表有静态顺序表,动态顺序表,单链表,双链表等。而顺序表就相当于数组,它的储存结构和数组相同,在逻辑结构和物理结构上都是线性的。静态顺序表就是一个数组,它的大小是在定义的时候就决定好的,不可在程序运行后改变,具有局限性。动态顺序表的内存是需要动态开辟的需要用到动态开辟函数,而通过realloc函数可以对它的内存根据需要调节,比较灵活,现在我们主要来学习一下动态顺序表。int size;//记录arr数组中已储存元素的个数}SL;

2024-04-08 11:45:00 845 78

原创 宏的使用(C语言详解)

宏定义函数 带副作用的宏参数 #运算符 ##运算符

2024-04-07 13:59:02 1378 61

原创 文件读写(相关函数详解)

文件 函数 文件读取错误检查 文件随机读写 文件顺序读写 sscanf函数 sprintf函数文件指针

2024-04-07 13:51:01 965 24

原创 编译与链接

预处理 语法分析 词法分析 语义分析及优化 汇编

2024-04-05 10:53:43 620 23

原创 文件操作(详解)

文件操作相关函数 什么是缓冲区 文件的错误检查 什么是流 随机读写 顺序读写

2024-04-04 09:52:51 840 14

原创 指针强化练习(详解)

指针运算 函数指针的理解

2024-03-31 13:09:40 970 24

原创 指针进阶(深入理解)

各种类型的指针详细讲解

2024-03-27 11:01:53 1113 12

原创 结构体内存对齐 和 位段

结构体的内存布局 位段的内存布局 如何节省空间 详解

2024-03-24 11:12:42 848 20

原创 <string.h>中的函数原理及使用

strcpy strstr strncpy strcat memcpy memset memcmp

2024-03-19 21:16:03 1084 25

原创 指针初级(基础知识)

void* 详解 const应用 assert断言指针运算 野指针

2024-03-11 21:37:01 1093 13

原创 qsort函数的原理及使用

排序,函数,指针运用,qsort函数,冒泡排序,qsort函数原理,函数指针

2024-03-05 22:15:24 705 69

原创 爬楼梯问题(4种解法)

递归 记忆递归 滚动数组 动态规划 斐波那契

2024-02-01 20:15:08 1453 3

原创 自制扫雷小游戏

小游戏,扫雷,控制台颜色设计,清屏处理,递归扫雷,游戏项目

2024-01-14 14:47:36 1212 8

原创 一.排序问题 及 二分法查找。

二分查找 排序 冒泡排序 选择排序 插入排序

2024-01-10 22:53:16 680 1

原创 函数(c)

函数的嵌套访问 链式访问 static extern 函数的定义和声明 形参和实参的区别return语句 库函数

2023-12-10 21:47:53 1125 4

原创 数据存储(浮点型)

精度损失的原因 科学计数法 浮点数 float double

2023-11-30 19:45:14 459 4

原创 数据存储(整型)与打印

原码 反码 补码 整形提升 截断

2023-11-25 17:05:05 583 6

空空如也

空空如也

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

TA关注的人

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