自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构:数组与链表的深度解析

本文探讨了数据结构中的线性表(数组和链表)的特点与应用。作者指出,数组具有随机访问快(O(1))但增删慢(O(n))的特点,适合频繁查找场景;链表则相反,增删快(O(1))但查找慢(O(n)),适合频繁增删场景。文中还介绍了LeetCode相关题目(如二分查找和链表反转)的解决思路,并建议参考"代码随想录"获取更详细解析。最后总结了两者的优缺点:数组存储密度高但扩展性差,链表空间利用率高但需要额外指针空间。

2025-10-16 12:22:08 621

原创 队列——C语言

本文介绍了基于数组实现的队列数据结构。队列采用先进先出(FIFO)原则,使用front和rear指针标记队首和队尾。实现了初始化、入队、出队等基本操作,并通过元素前移解决了"假溢出"问题。文中详细给出了各操作的C语言实现代码,包括队列调整算法isfull()。虽然该方法解决了数组空间浪费问题,但元素前移操作时间复杂度为O(n)。最后指出循环队列和链式队列是更高效的替代方案。测试示例验证了代码的正确性,为理解队列实现提供了实践参考。

2025-05-27 20:00:00 404

原创 链式栈——C语言

本文介绍了链式栈的实现方法。与线性栈相比,链式栈采用动态内存分配,无需预先固定大小,通过节点指针连接实现栈结构。文章详细讲解了链式栈的核心操作:初始化栈、压栈(Push)、弹栈(Pop)、释放栈、判断栈空和获取栈顶元素,所有操作时间复杂度均为O(1)。示例代码展示了链式栈的完整实现过程,包括结构定义、各功能函数及测试主程序。虽然链式栈需要额外存储指针开销,但其动态扩展特性使其在实际应用中具有优势,为后续实现括号匹配和表达式转换等功能奠定了基础。

2025-05-25 20:00:00 198

原创 栈实现——C语言

本文介绍了栈的基本概念和数组实现方法。栈具有"先进后出"的特性,文章详细讲解了用C语言实现栈的关键操作:包括栈结构定义(使用数组存储和top指针)、初始化(top设为-1)、入栈(先移动指针再存值)和出栈(先取值再移动指针)操作。通过示例代码演示了栈的基本使用,并给出了改进建议(如动态扩容和辅助函数)。文章指出这种基础实现有助于理解更复杂的数据结构,同时留下思考题:如何用两个栈实现队列功能。全文约150字。

2025-05-24 20:00:00 233

原创 顺序表——C语言

本文介绍了如何使用C语言实现顺序表的基本操作,包括初始化、元素追加、删除、插入、查找、打印和释放空间。通过定义结构体List和相关函数,展示了顺序表的核心功能。代码示例中,顺序表使用固定大小的数组存储数据,并通过malloc动态分配内存。主要操作包括:initlist初始化顺序表,appendelem追加元素,delelem删除元素,insertelem插入元素,findelem查找元素,printlist打印元素,以及freelist释放内存。文章还建议在实际应用中增加错误处理和动态扩容功能,并指出该实现

2025-05-23 20:00:00 314

空空如也

空空如也

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

TA关注的人

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