
数据结构
文章平均质量分 79
0X78
可接小功能单片机,C语言设计,数据结构及C语言答疑 WX: DPJSJ0X78
展开
-
数据结构-图-领接表存储
/ 定义图的结构,使用邻接表表示// vexnum 表示图的顶点数,arcnum 表示图的边数// vertices 是邻接表,存储了图的所有顶点及其邻接链表} ALGraph;原创 2024-11-27 17:59:30 · 1381 阅读 · 0 评论 -
数据结构-二叉树的遍历
先序遍历:根 -> 左 -> 右中序遍历:左 -> 根 -> 右后序遍历:左 -> 右 -> 根。原创 2024-08-30 18:25:32 · 3363 阅读 · 0 评论 -
数据结构-了解树和二叉树
空树:没有任何节点的树。非空树:包含一个根节点和零个或多个子树的集合。二叉树(Binary Tree)是一种每个节点最多有两个子节点的数据结构。这两个子节点通常被称为左子节点和右子节点。顺序存储是将二叉树的节点按照一定顺序存储在数组中的一种方法。该方法适用于完全二叉树或满二叉树,因为它们的节点排列较为规则,便于使用数组进行存储。链式存储是通过节点之间的指针关系来存储二叉树的一种方式。每个节点不仅存储数据,还包含指向其左右子节点的指针。链式存储适用于任意形状的二叉树,特别是对于不完全二叉树或稀疏树。原创 2024-08-30 09:57:35 · 1621 阅读 · 0 评论 -
数据结构-串-模式匹配算法(KMP算法)
KMP 算法的时间复杂度为 O(m+n),其中 m 是模式串的长度,n 是主串的长度。KMP 算法的空间复杂度为 O(m)。不论在最好、最坏还是平均情况下,KMP 算法的效率都优于简单的暴力匹配算法,特别是在处理长字符串时。int j = 0;:用于遍历模式串S的当前位置。:初始化next数组的第一个元素为-1,表示模式串的第一个字符之前没有任何字符(即没有前后缀)。int k = -1;:作为辅助变量,用于在next数组中回溯。初始化为-1,与next[0]原创 2024-08-21 22:23:09 · 1919 阅读 · 0 评论 -
数据结构-串-了解串-串的基本操作
使用一个固定长度的数组来存储串中的字符。数组的大小在定义时就确定,通常在数组的最后一个位置放置一个特殊字符(如空字符。原创 2024-08-21 18:05:09 · 1929 阅读 · 0 评论 -
数据结构-队列
队列是一种先进先出(FIFO, First In First Out)的数据结构。它的基本特性是:在队列中,元素的插入(入队)发生在队尾,元素的删除(出队)发生在队头。队列通常用于需要按顺序处理数据的场景。原创 2024-08-20 14:16:28 · 604 阅读 · 1 评论 -
数据结构-栈
栈是一种简单而重要的数据结构,广泛应用于计算机科学和编程中,尤其是在管理函数调用、表达式求值和实现算法时。由于其特有的LIFO特性,栈能够有效地处理需要临时存储和后续访问的元素。原创 2024-08-19 18:00:00 · 599 阅读 · 0 评论 -
数据结构-线性表-了解循环链表
单循环链表适合需要单向遍历的场景,结构简单,内存占用较少。双循环链表则提供了双向遍历的能力,适合需要频繁前后移动的场景,但内存占用相对较高。数据结构-线性表-单链表。原创 2024-08-18 10:12:48 · 381 阅读 · 0 评论 -
数据结构-线性表-单链表
单链表是一种基本的线性数据结构,由多个节点组成,每个节点包含数据域和指向下一个节点的指针。原创 2024-08-17 19:19:44 · 948 阅读 · 0 评论 -
了解指针使用
指针是强大而灵活的工具,但同时也需要谨慎使用,以避免潜在的错误和内存问题。理解指针的基本概念和操作是学习低级编程语言的重要一步。原创 2024-08-17 16:41:03 · 229 阅读 · 0 评论 -
数据结构-线性表-顺序表
顺序表(也称为线性数组)是一种线性数据结构,它将数据元素按顺序存储在一块连续的内存空间中。元素的顺序性:顺序表中的元素具有线性关系,每个元素都有一个唯一的位置(索引),可以通过索引直接访问。存储方式:顺序表的元素在内存中是连续存储的,这使得可以通过简单的下标访问实现快速的随机访问,时间复杂度为 O(1)。固定大小:在创建顺序表时,通常需要指定其最大容量,虽然可以通过动态数组等形式实现扩展,但扩展过程可能涉及到大量的数据复制。插入与删除操作。原创 2024-08-15 18:29:56 · 1952 阅读 · 0 评论 -
数据结构--数据结构概述
了解数据结构原创 2024-08-14 19:26:48 · 1458 阅读 · 0 评论