自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 栈和队列——精选题目

本文介绍了四个LeetCode题目关于栈和队列的实现方法: 有效的括号; 用队列实现栈; 用栈实现队列;设计循环队列 每个题目都提供了完整的数据结构定义和操作函数实现,包括初始化、销毁、入队/入栈、出队/出栈等核心操作。

2025-11-23 22:23:06 632 10

原创 数据结构_栈和队列

本文介绍了栈和队列两种线性数据结构。栈采用后进先出原则,通过数组实现入栈出栈操作;队列采用先进先出原则,通过链表实现队列入队出队操作。文章详细讲解了栈和队列的结构定义、初始化、销毁、插入删除等基本操作的代码实现,并提供了完整的C语言实现代码。栈的实现重点在于数组的动态扩容,队列的实现关键在于维护头尾指针。两种数据结构各有特点,栈适合处理函数调用等场景,队列则适用于任务调度等应用。文章最后还预告了后续将介绍相关算法题目。

2025-11-22 16:11:23 1315 5

原创 数据结构——双链表

本文详细介绍了双向链表(带头双向循环链表)的实现方法。首先对链表进行了分类说明,重点讲解了双向链表的代码实现。通过代码示例展示了双向链表的核心操作实现,包括节点定义、初始化、增删查改等13个关键功能。文章还提供了完整的代码文件(List.h、List.c、test.c)供参考,并分享了实现过程中的注意事项。最后指出双向链表虽然操作方便,但需根据实际需求权衡空间占用问题,合理选择数据结构。全文通过理论讲解与代码实践相结合的方式,系统地介绍了双向链表的实现与应用。

2025-11-21 20:09:05 765 12

原创 链表——精选题目

本文总结了9种链表题目的解决思路和代码实现:1.移除元素;2.反转链表;3.找中间节点;4.合并有序链表;5.链表分割;6.回文判断;7.相交链表;8.环形检测;9.入环节点。提供了力扣和牛客网题目链接及C++/C实现代码。

2025-11-20 19:37:34 999 7

原创 数据结构——单链表

本文详细介绍了单链表的数据结构及代码实现。首先阐述了链表的特征和构成(数据域+指针域),并对比了与顺序表的差异。接着通过代码展示了单链表的完整实现,包括创建节点、打印链表、头插尾插、头删尾删、查找元素、指定位置插入删除等核心操作。重点讲解了需要二级指针的场景(如头插/头删)及边界条件处理。最后提供了完整的头文件、实现文件和测试代码,并预告后续将分享更具挑战性的链表题目。全文兼顾理论讲解与实践编码,适合数据结构学习者参考。

2025-11-16 20:47:26 1326 8

原创 顺序表——练习题

题目链接:27. 移除元素 - 力扣(LeetCode)题目描述给你一个数组nums和一个值val,你需要移除所有数值等于val的元素。元素的顺序可能发生改变。然后返回nums中与val不同的元素的数量。假设nums中不等于val的元素数量为k,要通过此题,您需要执行以下操作:更改nums数组,使nums的前k个元素包含不等于val的元素。nums的其余元素和nums的大小并不重要。返回k。

2025-11-14 16:30:19 735

原创 数据结构——顺序表

本文系统介绍了顺序表的数据结构实现方法。首先定义了顺序表的基本概念,区分了静态和动态顺序表的区别。重点阐述了动态顺序表的实现过程,包括初始化、增删改查等核心功能:1)详细讲解了尾插、头插两种插入方式;2)介绍了尾删、头删等删除操作;3)实现了指定位置插入删除功能;4)提供了查找和扩容机制。文章采用模块化设计方法,将顺序表功能分解为多个函数实现,并给出了完整的代码示例。最后强调了顺序表作为线性表基础数据结构的重要性,为后续学习更复杂的链表等数据结构奠定基础。

2025-11-14 00:47:03 1318 12

原创 数据结构——算法复杂度:提升代码效率的关键

本文系统介绍了数据结构算法中的复杂度分析,包括时间复杂度和空间复杂度的概念、计算方法与应用实例。文章首先阐述了数据结构与算法的基本定义,然后重点讲解了复杂度分析的核心要点:使用大O表示法评估算法性能、常见时间复杂度类型(O(1)、O(n)、O(n^2)、O(logn)等)及递归函数的复杂度计算。通过典型例题演示了不同算法的复杂度推导过程,并针对轮转数组问题提出了三种时间复杂度的解决方案(O(n^2)、O(n)、O(1)),突出了优化算法效率的重要性。文章为系统性学习算法复杂度提供了清晰的逻辑框架和实用案例。

2025-11-10 20:05:45 891 6

原创 通关C语言:从Hello World的感动到征服“指针”的崩溃与成长

作为一名刚刚闯过C语言“新手村”的勇士,我既想总结知识,又想分享心情。下面这篇博客就是我为你准备的,希望能引起大佬们的共鸣,也能帮助到其他初学者。· #include: 包含头文件,让你能使用 printf 这样的函数。· int main(): 主函数,必须有且只能有一个。· printf: 你的第一个“好朋友”,负责输出。· return 0: 告诉操作系统“我运行得很好”。· 算术运算符: +, -, *, /, % · 关系运算符: >, <, ==, != (判断是否相等要用两个等号 ==

2025-11-08 20:15:49 598 3

原创 C语言入门必知:这些细节你掌握了吗?

本文分享了C语言学习初期容易忽略的基础知识。作者从自身学习经历出发,回顾了从零开始接触C语言的过程。文章重点整理了8个关键易忽略的知识点:1)库函数示例;2)32个关键字;3)ASCII码记忆技巧;4)转义字符;5)语句分类及控制语句;6)运算符优先级;7)占位符;8)赋值忽略符(*)的使用场景。以"hello world"代码为引,通过实用案例(如日期输入处理)说明基础概念的应用,帮助初学者避开常见误区,建议读者结合实践加深理解。

2025-11-08 19:35:23 856 7

空空如也

空空如也

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

TA关注的人

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