数据结构
文章平均质量分 93
wlisontj
这个作者很懒,什么都没留下…
展开
-
【数据结构】08排序
常见排序算法原创 2024-04-18 15:24:48 · 372 阅读 · 1 评论 -
【C++ STL竞赛用】
STL作为一个封装良好、性能合格的C++标准库,灵活正确使用STL可以节省非常多的时间。原创 2024-04-17 10:12:03 · 1016 阅读 · 0 评论 -
【数据结构】01绪论
时间复杂度关心的是数量级,所以对f(n)的表达式需要简化,1)略去常数,2)只保留最高阶的项,3)最高阶项系数为1。时间复杂度T(n)最简单的描述就是:计算机运行一个算法时,程序代码被执行的总次数。算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列。算法的特性:输入、输出、有穷性、确定性和可行性。程序代码的执行总次数一般与问题规模有关。空间复杂度S(n)指算法消耗的内存空间。原创 2024-03-27 15:46:50 · 772 阅读 · 0 评论 -
【数据结构】02线性表-顺序表
数据结构-线性表-顺序表的C++实现原创 2024-03-27 15:45:12 · 1002 阅读 · 1 评论 -
【数据结构】02线性表-单链表
方法:从头结点开始,找到第i-1个元素的位置,将第i-1个元素的指针域指向新元素,将新元素的指针域指向之前的第i个元素,此时新元素就成为了第i个元素。在链式存储中,除了要存储数据元素信息之外,还要存储它的后继元素的地址。n个节点链接成一个链表,即为线性表的链式存储结构,因为此链表的每个结点中只包含一个指针域,所以叫做。来说,它需要存储数据元素信息(数据域)还要存储,后继位置信息(指针域),指针域中存储的信息称为。方法:找到第i-1个元素,将第i-1个元素的指针域指向第i+1个元素,清空第i个元素。原创 2024-04-03 16:08:13 · 931 阅读 · 1 评论 -
【数据结构】03栈与队列-队列
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出(First In First Out,FIFO)的线性表,简称FIFO结构。允许差于的一端称为队尾,允许删除的一端称为队头。线性表有顺序存储和链式存储,栈是线性表,也具有这两种存储方式。同样的,队列作为一种特殊的线性表,同样存在这两种存储方式。但是,顺序存储结构的队列有严重的缺陷。原创 2024-04-05 16:29:18 · 892 阅读 · 1 评论 -
【数据结构】03栈与队列-栈
20// 数据类型// 存放数据int top;// 栈顶指针 -1表示空栈 最大值为MAXSIZE-1把一个直接调用自己或通过一系列操作间接调用自己的函数,称作递归函数。每个递归必须至少有一个条件,满足时递归不再进行,即不再调用自身而是返回值推出。递归和栈的关系:在前行阶段,随着对每一层的递归,函数的局部变量,参数值和返回地址都被压入栈中。在退回阶段,位于栈顶的局部变量、参数值和返回地址被弹出,用于返回调用层中执行代码其余的部分。原创 2024-04-05 13:37:35 · 952 阅读 · 1 评论 -
【数据结构】04串
串(string)是由零个或多个字符组成的有限序列,又叫字符串。一般记为s=a1a2ann≥0a1a2...ann≥0。串中字符数目n称为穿的长度。原创 2024-04-07 11:00:16 · 604 阅读 · 0 评论 -
【数据结构】05树
结点的子树的根称为该结点的孩子(Child),相应地,该结点称为孩子的双亲(Parent)结点。结点的祖先是从根到该结点所经分支上的所有结点。规则:树为空,则空操作返回,否则从树的第一层,也就是根结点开始访问,从上而下的逐层遍历,同一层中,按从左到右的顺序对结点逐个访问。二叉树的顺序存储结构就是用一维数组存储二叉树中的结点,并且结点的存储位置,也就是数组的下标能够体现结点之间的逻辑关系。规则:二叉树为空,则空操作返回,否则从根结点开始,先中序遍历根结点的左子树,然后访问根结点,最后中序遍历右子树。原创 2024-04-09 15:06:31 · 741 阅读 · 0 评论 -
【数据结构】06图
图(Graph)是一种比线性表和树更复杂的数据结构。在线性表中,数据元素之间是一对一的关系,每个数据元素只有一个直接前驱和一个直接后继。在树形结构中,数据元素之间有明显的层次关系,上一层的数据元素(结点)和下一层的数据元素(结点)是一对多的关系。而在图形结构中,数据元素之间的关系是任意的,是多对多的关系。在图中,数据元素通常称作顶点(Vertex),简称V,是有穷非空的集合,记为Vv1v2vnVv1v2...vn,|V|表示顶点个数。两个顶点之间的关系称作边。原创 2024-04-11 15:54:28 · 851 阅读 · 0 评论 -
【数据结构】07查找
Hash表根据数据元素的key生成一个Hash地址,找到Hash地址对应的头结点后,插入到头结点对应的单链表中,这里使用的是头插法。从Hash表中删除数据元素也是根据它的key值,生成一个Hash地址,然后找到头结点,遍历整个头结点对应的单链表,找到key值对应结点的前一个结点,删除最后key值对应的结点。Hash表由存储链表头结点的数组,数据元素单链表构成,并且每个数据元素对应有关键字’key’和数值’value’,因此需要构建三个结构体,并对他们初始化。查找长度:在查找运算中,需要对比关键字的次数。原创 2024-04-12 11:01:50 · 672 阅读 · 0 评论