数据结构
文章平均质量分 66
人生缓缓,自有答案
人生缓缓,自有答案
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言栈详解
栈(Stack)是一种后进先出(LIFO, Last In First Out)的线性数据结构。它只允许在一端(栈顶)进行插入和删除操作。常见于函数调用、表达式求值、括号匹配、撤销操作等场景。在C语言中,常用顺序表(动态数组)实现栈。每个栈结构体包含:数据区(动态数组)栈顶指针容量// 数据类型定义// 栈结构体// 动态数组int top;// 栈顶指针,指向栈顶元素的下一个位置// 当前容量} ST;栈是一种常用的数据结构,适合需要后进先出处理的场景。原创 2025-05-27 16:40:12 · 489 阅读 · 0 评论 -
C语言队列详解
队列(Queue)是一种先进先出(FIFO, First In First Out)的线性数据结构。它只允许在一端插入数据(队尾),在另一端删除数据(队头)。常见于排队、消息缓冲等场景。在C语言中,常用链式结构实现队列。每个节点包含数据域和指向下一个节点的指针。// 队列节点结构体// 队列结构体// 队头指针// 队尾指针} Queue;队列是一种常用的数据结构,适合需要按顺序处理数据的场景。掌握其链式实现原理和常见操作,有助于更好地理解数据结构和C语言指针操作。原创 2025-05-27 15:50:41 · 425 阅读 · 0 评论 -
双向链表详解
双向链表(Doubly Linked List)是一种链式数据结构,每个节点包含三个部分:数据域、指向前驱节点的指针(prev)、指向后继节点的指针(next)。与单向链表相比,双向链表可以方便地进行前向和后向遍历,插入和删除操作也更加灵活高效。// 数据类型定义// 双向链表节点结构体// 数据域// 指向前驱节点// 指向后继节点} LTNode;双向链表是链表家族中非常重要的一员,适合需要频繁在两端或中间插入、删除元素的场景。原创 2025-05-27 14:44:20 · 520 阅读 · 0 评论 -
单链表详解
单链表(Singly Linked List)是一种物理存储结构上非连续、非顺序的线性表。它通过指针将一系列节点连接起来,每个节点包含数据域和指向下一个节点的指针域。单链表的逻辑顺序通过指针链接次序实现。单链表是一种灵活的线性结构,适合插入、删除频繁且空间利用率要求高的应用场景。虽然不支持高效的随机访问,但在实际开发中,单链表常作为更复杂数据结构(如哈希表、邻接表等)的基础。原创 2025-05-26 15:48:53 · 500 阅读 · 0 评论 -
顺序表详解
顺序表(Sequential List)是线性表的一种实现方式。它利用一段物理地址连续的存储空间(通常是数组)来依次存放线性表中的元素。顺序表的每个元素在内存中都是紧挨着存储的,因此可以通过下标(索引)直接访问任意位置的元素。顺序表属于线性结构,常用于需要频繁随机访问的场景。//静态顺序表的设计结构(固定大小,不能按需索取)//{//存放几个有效数据//};//动态顺序表的设计结构(空间大小可变)//指向动态开辟的数组int size;//有效数据的个数//空间容量的大小。原创 2025-05-26 14:17:06 · 440 阅读 · 0 评论
分享