- 博客(19)
- 收藏
- 关注
原创 “袖里乾坤大,壶中日月长”:循环队列的空间复用之道
线性队列的尽头,往往是一场名为“假溢出”的虚无——明明空间尚存,却被逻辑的壁垒拒之门外。本文试图打破这一线性的桎梏,带你走进循环队列的圆融世界。我们将从取模运算的数学之美切入,解析如何利用索引的回绕,将有限的数组空间编织成生生不息的闭环;在 front 与 rear 的追逐游戏中,厘清“队空”与“队满”的微妙边界。这不仅是一次对数据结构的代码重构,更是一场关于“绝处逢生”的思维突围。愿你在此读懂:所谓的终点,不过是下一次起点的开始。
2026-08-04 21:48:32
341
原创 深耕终端代码调试:GDB 实战指南(从入门到高阶)
调试如探案,Bug 是藏匿于代码深处的谜题,而 GDB 便是那柄能剖开黑盒的探照灯。本文从一个看似简单却极易疏忽的问题——“程序为何没有正确退出”切入,循着断点、单步、数据窥探与栈帧回溯四条主线,系统梳理了 GDB 调试最核心的指令与心法。我们不求穷举所有命令,只愿在纷繁的调用栈中,帮你练就一双看清变量跳动、读懂程序呼吸的眼睛。从定位病灶到修改错误,每一步都佐以实战演示,让理论与指尖的敲击紧密呼应。愿这篇文字,能成为你穿越 Bug 迷雾时手中那盏不灭的灯。
2026-08-04 21:48:15
169
原创 链上轻舟,循流有序:链式队列的底层诗意
链式队列,如一条由指针串联的灵动长河,不依赖连续内存,却以离散节点构筑有序世界。它摒弃“头结点”的庇护,每一次入队出队皆是指针的精准跃迁,既考验逻辑的严密,也彰显代码的纯粹。本文从设计哲学出发,深入剖析初始化、判空、入队、出队、获取首尾元素、清空与销毁等核心操作,不仅讲解“如何做”,更探讨“为何如此做”。在动态内存的舞蹈中,你将看见数据结构如何在无序中建立秩序,在变化中维持稳定——这不仅是技术的实现,更是思维的淬炼。
2026-07-24 20:51:30
172
原创 “君住长江头,我住长江尾”:顺序队列的首尾遥望
一行行代码,是写给机器的诗;一个个节点,是逻辑跳动的脉搏。本文带你从零构建一个健壮的顺序队列,看数据如何在 front 与 rear 的牵引下,完成一场关于“等待”与“次序”的完美流转。我们不仅解决了传统数组的溢出困境,更在动态扩容中学会了变通。这不仅是一份实现指南,更是一次对底层秩序的深情凝视。
2026-07-24 20:50:22
324
原创 代码之外的留白:一份关于Linux进程与文本的静谧笔记
屏幕幽蓝,光标闪烁,Linux终端不仅是冰冷的代码,更是充满秩序与逻辑的修行场。本文以一份详实的个人学习笔记为引,带你走进字符与指令交织的世界。从掌控进程生灭的 ps 与 kill ,到前后台切换的从容不迫;从在浩瀚文件系统中沙里淘金的 find 与 grep ,再到指尖于 vi 编辑器上跳出的优雅舞步。这不仅是一份速查手册,更是一场关于精准控制与效率提升的探索之旅。愿你在这些纯粹的黑白指令中,拨开繁杂的表象,感受系统底层的呼吸,寻得属于程序员的浪漫与自由。
2026-07-21 17:57:34
186
原创 行到水穷处,坐看栈起时——动态内存的链式之美
栈,是数据结构中极简却深邃的存在;而链栈,则赋予了这份极简以动态的自由。本文带你走进C语言构建的链栈世界:从结构体指针的重命名艺术,到入栈、出栈、销毁等核心函数的底层实现。我们不只讲解代码语法,更试图拆解每一行逻辑背后的内存哲学——如何在动态分配中寻找秩序,在指针跳转间维持严谨。这是一份硬核的技术实录,也是一次对“后进先出”法则的浪漫重构。愿你在阅读中,听见代码呼吸的声音。
2026-07-15 20:56:24
177
原创 数据结构顺序栈:从内存布局到高性能实战,一文领略 LIFO 的艺术
后进先出,是最简单的时间法则,也是栈贯穿计算机系统底层的全部秘密。递归靠它回溯,表达式靠它求值,程序调用链靠它层层展开又层层收回。本文以C语言实现动态顺序栈为主线,从top与base指针的设定起笔,依次展开初始化、状态判断、动态扩容、入栈与出栈等核心操作,每一段代码都配以内存变化示意,让指针的每一次偏移都有迹可循。顺序栈虽小,却是理解更复杂数据结构的起点。读完这篇,你得到的不仅是一份可落地的源码,更是一种从底层向上看问题的眼光——扎实、安静、也足够锋利。
2026-07-13 18:11:24
216
原创 数据结构界的“双向奔赴”:手撕双向链表
有一种数据结构,不屑于单向奔赴,而是让每个节点都身兼两种身份——左手牵前驱,右手挽后继。哨兵节点如坐标系的原点,让空与满的操作浑然天成;循环之环如圆环扣合,使首尾相接,遍历再无死角。于是,插入删除不再依赖繁复的查找,按值清除也能在穿行中一次到位。从初始化到销毁,每一步都透露着对称与均衡的智慧。若说单链表是锐意进取的剑,那这便是进退从容的盾。愿你在指针交织的经纬里,读懂这份关于“周全”的匠心。
2026-07-11 19:30:00
183
原创 数据结构的魔法:让链表首尾相连的秘密!!!
单循环链表,尾指针回眸一顾,首尾自此相衔。遍历不再有终点,只有周而复始的流转。本文以C语言为刃,逐层剖解初始化、头插尾插、按位插入、按值删除(一击即中或尽数清缴)、查找判空、销毁释放等核心操作;继而探入轮询调度与约瑟夫环等应用腹地,看周期之美如何照进现实。同时,亦不避讳死循环之险与边界之隘,在指针的方寸之间,锤炼内存管理的缜密与从容——代码落定,逻辑自明。
2026-07-07 20:22:00
175
原创 数据结构:单链表从入门到精通 -- 图解+代码详解(C语言实现)
带头节点单链表是数据结构中最经典的入门案例。通过本文梳理,从节点定义的底层逻辑,到初始化、增删改查等核心操作,再到内存释放的完整生命周期,我们不仅掌握了指针与结构体的精妙配合,更领悟到“物理离散但逻辑连续”的链式存储智慧。头节点的设计巧妙统一了边界处理,让代码更优雅健壮。链表虽基础,却是理解复杂数据结构的基石,也是动态内存管理的绝佳实践。愿这份总结助你夯实基础,在数据结构之路上继续探索前行!
2026-06-18 18:00:00
213
原创 Linux开篇:从零开始的入门
本文是一篇专为Linux初学者打造的实战指南,旨在帮助读者快速掌握命令行操作的核心技能。文章从“为什么学Linux”出发,系统梳理了文件系统结构、根目录与常见目录的作用,并详解文件类型与可执行格式。重点聚焦基础命令,涵盖文件与目录的常用操作、拷贝移动查看等实用技巧。核心章节深入讲解权限机制,包括三类用户、rwx权限含义、字符与数字表示法及修改方法,助您精准掌控系统安全。此外,还介绍了vi/vim编辑器的三种模式使用技巧。内容循序渐进,注重实操,是新手入门Linux不可多得的精简教程!
2026-06-12 00:08:15
322
原创 数据结构:顺序表(超详函数剖析!!!)
深度剖析C语言实现顺序表的全套代码。本文直接实现动态顺序表,更重点实战了 realloc 动态扩容机制及边界条件处理。通过逐一拆解初始化、判空判满、增删改查(头插、尾插、任意位置操作)等20个核心函数,帮助你建立扎实的内存管理思维。代码注释详尽,逻辑清晰,是学习数据结构入门的最佳实践指南。
2026-06-05 10:47:49
406
2
原创 C语言:动态内存
写 C 语言,其实就是在和内存打交道。栈是系统替你收拾烂摊子,堆是你自己收拾烂摊子。动态内存并不神秘,它只是给了你一把钥匙——既能打开更大的空间,也可能打开更多的坑。区别在于:你是否清楚自己在什么时候,申请了哪一块内存,又该在什么时候释放它。希望通过本文的介绍,会对你有所帮助,如果有什么问题,欢迎在评论区留言讨论。
2026-05-29 18:17:46
338
2
原创 C语言:结构体的大小
结构体是C语言中非常重要的一种数据类型,它允许我们将不同类型的数据组合在一起。在计算结构体大小时,需要考虑内存对齐的因素。通过合理调整结构体成员的顺序,可以优化结构体的空间使用。深入理解结构体及其大小计算,有助于我们编写更高效、更节省内存的C语言程序。希望通过本文的介绍,读者对结构体和结构体大小计算有了更全面的理解,加油💪💪💪!!!
2026-05-20 00:40:08
390
原创 C语言:指针及其用法
计算机内存可看作一排连续的抽屉,每个抽屉有唯一编号(地址)。指针就是存储这些地址的变量,它"指向"某个内存位置。指针是一个变量,它存储的是另一个变量的内存地址。在C语言中,每个变量都有一个对应的内存地址,指针可以指向这个地址,从而让我们能够直接访问和操作该内存位置的数据。补充:指针的大小指针的大小(占几个字节)不是一个固定的值,它取决于编译目标平台的地址总线宽度也就是用多少位来表示内存地址:32位平台:指针通常是4字节(32bit)64位平台:指针通常是8字节(64bit)
2026-05-04 10:34:19
397
原创 C语言语法篇:分支与循环
熟练掌握分支与循环语句是C语言编程的基石,它们赋予了程序“思考”与“重复”的能力。学习时不必贪多,关键在于理解 if 与 switch 的选择场景、三种循环的执行流程差异以及 break 与 continue 的本质区别。切记,读懂代码不如手写代码,只有通过不断的敲打与调试,才能真正将这些逻辑内化为自己的编程直觉,在这条C语言学习之路,我们的征途是星辰大海!一起加油!!!
2026-03-30 22:59:34
413
原创 C语言概述及基本数据类型
其中char类型的数据若是用%c控制符输出,其输出的是字符,而用%hhd或其他的整型数据的格式控制符则输出的是整数,字符的本质其实也是数字,只是计算机并不认识字符,只能用特定的ASCII码数值来代表特定的字符。故事的开始是极具温柔的,上述代码是大多数初学者所写的第一个C语言代码,见证着我们学习C语言的起步,下面就开始我对C语言的学后总结,首先要讲的是C语言中基本的数据类型。整型家族有这几位,包括有符号位的和相对应的无符号位的。C语言的基本数据类型一般包括整型家族和浮点型家族。二、C语言基本数据类型。
2026-03-22 21:38:26
68
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅