logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【数据结构】万字深度解析 | 循环队列:为什么数组实现要牺牲一个单元?

循环队列是解决传统数组队列假溢出问题的精妙方案,它通过取模运算实现了存储空间的循环利用。本指南对循环队列进行了深度解析,首先从队列的 FIFO 特性及顺序队列的缺陷入手,引出循环队列的核心设计哲学:牺牲一个存储单元以简洁区分队空和队满状态。文章提供了基于 C 语言的数组实现和循环链表实现的完整代码与详细注释,并系统对比了它们在缓存友好性、空间效率和扩容难度等方面的优劣。

文章图片
#数据结构#算法
【数据结构】手撕队列(Queue):从FIFO底层原理到高阶应用的全景解析

队列(Queue)作为先进先出的经典数据结构,是操作系统调度、网络缓冲及广度优先搜索(BFS)的基石。文章不仅详细讲解了链表实现队列的内存管理与指针操作技巧,还对比了数组实现的优劣与假溢出问题。此外,更进一步探讨了循环队列、双端队列、阻塞队列等高级变体。

文章图片
#数据结构#链表
【C语言】底层揭秘:函数调用背后的“黑魔法”——超详细图解函数栈帧的创建与销毁

函数调用是C语言中最频繁的操作,但其底层逻辑却隐藏在复杂的汇编指令中。你是否曾困惑于局部变量为何随机、传参为何从右向左、返回值如何瞬间带回?本文将带你深入程序的“幕后”,以 VS2019 编译器环境为实例,结合EBP/RBP、ESP/RSP两大核心寄存器,逐句拆解 main 函数调用 Add 函数时的完整汇编代码。通过清晰的图示和表格,我们将彻底揭开函数栈帧创建、传参、执行、销毁的全过程,让你从小

文章图片
#c语言#开发语言
【C语言】入门必看四大内存函数全解析:memcpy、memmove、memset、memcmp

你是否总是被 C 语言中的内存函数弄混?memcpy 和 memmove 究竟有何不同?memset 是如何高效初始化内存的?memcmp 为什么能比字符串比较更灵活?别担心!这篇文章将从原理、代码实现、常见问题到优化技巧,全面剖析这四个内存函数的使用场景和注意事项。阅读完,你不仅能熟练运用这些函数,还能理解它们在 C 语言中的底层操作。

文章图片
#c语言#开发语言
到底了