- 博客(20)
- 问答 (1)
- 收藏
- 关注
原创 数据结构--树
二叉树是数据结构的一部分,其性质和堆非常相似。虽然是树。但是二叉树我们在使用的时候都是倒着的二叉树的结构如图所示我们从图中可以得知,二叉树的结构是根朝上,叶朝下,这个1就是最原始的根,2和3就是1的左右子节点,2和3也会作为父节点,4和5,6和7就是2和3的左右节点。
2026-03-24 09:31:14
320
原创 栈和队列的实现
栈与队列作为线性表的特殊受限访问形式,是计算机科学中最基础、最重要的数据结构之一。栈遵循 ** 后进先出(LIFO)** 原则,在函数调用、表达式求值、括号匹配等场景中发挥着核心作用;队列遵循 ** 先进先出(FIFO)** 原则,广泛应用于任务调度、消息队列、缓冲区管理等场景。本次实现中,我们分别采用动态数组与环形数组的方式,完成了栈与队列的入栈 / 入队、出栈 / 出队、判空、扩容等核心操作,既保证了操作的高效性,也解决了数组越界与空间利用率的问题。
2026-03-16 19:59:00
337
原创 C++中的类和对象
1.1、类的定义格式class为定义类的关键字,Stack为类的名字,{}是类的主体,类体中的内容成为类的成员,类中变量成为类的属性或成员变量,类中的函数称为成员函数public:perror("malloc申请内存失败");return;capacity=n;top=0;为了方便区分,我们通常会在成员变量前加上特殊表示C++中struct也可以定义类,并兼容C的struct用法,定义在类面的成员函数默认为inline。1.2、访问限定符。
2026-03-16 17:25:36
325
原创 单链表入门
单链表的核心是指针操作,所有功能都围绕着遍历“指针找目标节点”展开实现时必须处理Nullptr,否则会导致程序崩溃本文极简代码覆盖了单链表的核心场景,新手掌握后可扩展头插,指定位置插入,清空链表等功能。
2026-03-12 20:44:15
424
原创 C++入门讲解
⼀般是开发Windows上的桌⾯软件,⽐如WPS之类的,技术栈的话⼀般是C++和QT,QT是⼀个跨平台的C++图形⽤⼾界(GraphicalUserInterface,GUI)程序。3、 游戏引擎开发。很多游戏引擎就都是使⽤C++开发的,游戏开发要掌握C++基础和数据结构,学习图形学知识,掌握游戏引擎和框架,了解引擎实现,引擎源代码可以学习UE4、Cocos2d-x等开源引擎实现。如果你只想准备数据训练模型,那么学会Python基本上就够了,如果你想做机器学习系统的开发,那么需要学会C++。
2026-03-11 15:38:29
625
原创 直接插入排序的实现
众所周知排序的类型有很多,比如希尔排序、直接排序、计数排序等等,本文我先对插入排序进行详细讲解,现在我们来进行代码预览和讲解。
2026-03-10 10:19:10
309
原创 双向链表的操作
当头节点为空是,我们不返回任何值,然后临时变量作为空节点,如果cur不为空,如果让cur定义为x,然后提前保存下一个节点,如果cur的前节点为空时,我们进行头删,如果下一个节点为空我们进行尾删。两种情况之外,我们架空cur节点,让cur前节点的后节点直接等于cur的后节点,让cur下个结点的前节点直接等于cur的前节点,然后用保存next更新遍历指针。定义一个临时节点来当作头节点,当cur不为空时,我们一直打印这个节点数据,然后让cur等于它的下一个节点,以此类推直到cur到最后一个节点为止。
2026-03-08 21:28:48
469
原创 贪吃蛇代码讲解(C语言版本)
本文章会介绍贪吃蛇代码的编写思路,我们先提前预览一下代码,由于此项目为分文件编写,所以我会每个都展示并讲解这里出现了很多个新的预处理指令,比如windows.h,time.h,其中windows.h的指令作用是为了实现交互界面和控制,简单来说就是用键盘来控制程序运行,time.h是为了记录游戏运行时间且生成随机数种子,主要是用来控制食物的随机位置刷新这里定义了蛇头初始横纵坐标的位置,如图定义为在横坐标24,纵坐标为5,且这里定义了贪吃蛇的三类游戏元素的组成部分,如墙面我们设计为□,蛇的身体我们设计为●,
2026-03-07 18:24:36
802
原创 数组习题:重新排列数组
nums是输入的整数数组指针,n是数组的前半部分,numsSize是数组长度,i的位置上去,奇数位的转换逻辑是,i的后半个n元素转到第2。returnSize是新数组的长度。**此处接收了四个形参,
2026-02-01 11:56:38
651
原创 初步了解C语言的编译与链接
编译:单个源文件 → 二进制 “半成品”(.o);链接:多个半成品 + 系统库 → 可执行 “成品”,整个流程的核心是 “从文本到机器码,从碎片到完整程序”。
2026-01-27 19:40:47
372
原创 C语言回文数
举个例子,12345,我们先取出5,然后让他成10(会循环的,这里先乘10),然后我们得到reverse=5(因为先前为0+temp%10),然后temp/10取出整除的数1234,然后一次循环提出4,3,2,1等等,直到x<reverse为止,之后进行判断,如果x与reverse相同,则返回true。比如10,20,30,40,100,这些数都整除10,但是反转后为01,02,03,04,001,也都不是原来的数,所以所有末尾为0的数(0除外)的也有不是回文数。
2026-01-27 19:40:24
487
原创 库函数的模拟实现
模拟实现库函数的过程,就是 “知其然,知其所以然” 的过程。这些函数看似简单,但每一行代码都凝聚着底层编程的智慧。掌握它们不仅能应对面试,更能让你在写底层代码时更加得心应手。
2026-01-25 12:01:13
563
原创 指针讲解(1) 初步了解C语言指针(概念分析+基础示例代码)
C语言指针可以说是让C语言初学者最头疼的部分之一,原因不乏有概念难理解,就算概念理解了上手敲代码依然困难重重,当然这都可以理解,因为其概念机器抽象,且打破了C语言初学者养成的“直接数据操作”思维,突然转化为间接访问的抽象层。接下来我会由浅入深的分析指针,让大家更容易理解(可作为初步了解后的辅助加深记忆,不建议初学者完全依赖学习)
2026-01-24 16:37:19
903
原创 扫雷代码思路分析(新手版&附带完整源码)
扫雷是一款家喻户晓的计算机游戏,其历史可追溯到上世纪70年代,因其操作简单但思路烧脑的特点迅速火遍全世界。直到今天它仍然是很多计算机编程者的练习项目,它的核心逻辑(埋雷,数字提示,交互判断)恰好覆盖了数组操作,随机数生成,条件分支,循环等基础编程知识点。接下来我们逐个拆解控制台版扫雷的代码思路,一步步还原这款经典游戏的核心逻辑。
2026-01-17 13:13:00
584
原创 C语言的分支与循环
分支结构让程序学会 “做选择”,循环结构让程序学会 “重复做”,二者是 C 语言编程的基础,也是实现复杂逻辑的核心工具。掌握ifif-else三种分支形式,以及whiledo-whilefor三种循环方式,理解break和continue的作用,避开常见的语法陷阱,就能灵活运用这些工具,编写出逻辑清晰、高效实用的 C 语言程序。从简单的猜数字游戏、计算器,到复杂的数据处理、算法实现,分支与循环始终是不可或缺的核心骨架,支撑着程序的每一个逻辑步骤。
2026-01-09 12:51:59
1008
原创 从0到1,从1到无限
每天我都会结合“实践+理论”进行学习,课余时间我会自己寻找题库来提升自己的编码能力,同时会让AI进行随机出题,让脑中知识灵活不死板。身为一名大二的计算机专业学生,目前正在系统性的学习C语言,随着从基础入渗,一点点循序渐进的学习高级且复杂的知识。希望通过博客来记录我的学习经历,也能让未来的自己回顾一下现在的我。我最想进入的公司是腾讯,那里的企业文化是我最喜欢的,同时那里的工作氛围和接触到的资源、同事都是最优质的。我每周大约在编程学习上花费大约25小时,周一到周五每天会学习3h,周末每天5h.
2025-12-13 22:05:05
186
空空如也
双非网安学生如何实现自身能力的飞升?
2025-07-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅