![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 92
普通网友
这个作者很懒,什么都没留下…
展开
-
<数据结构> - 数据结构在算法比赛中的应用(下)
Trie树Trie字符串统计最大异或对并查集合并集合连通块中点的数量食物链堆堆排序模拟堆原创 2022-08-31 09:34:49 · 584 阅读 · 17 评论 -
<数据结构> - 数据结构在算法比赛中的应用(上)
单链表双链表单调栈单调队列&滑动窗口KMP字符串原创 2022-08-30 15:45:24 · 542 阅读 · 29 评论 -
数据结构 - 平衡二叉树(AVL树)概念 | 插入与平衡调整
前言AVL树的概念AVL树结点的定义AVL树的插入AVL树的平衡调整(重点)LL型不平衡(需右单旋转)RR型不平衡(需左单旋转)LR型不平衡(需左右双旋转)RL型不平衡(需右左双旋转)AVL树简单实现以及验证-插入原创 2022-08-24 10:25:14 · 1325 阅读 · 25 评论 -
基础算法 - 常见算法模板题(最简洁写法)【上】
快速排序第k个数归并排序逆序对的数量二分查找数的范围浮点数二分高精度高精度加法高精度减法高精度乘法(高精度x低精度)高精度除法前缀和与差分前缀和子矩阵的和差分差分矩阵...原创 2022-08-26 09:58:44 · 366 阅读 · 21 评论 -
数据结构 - 二叉搜索树实现 | 性能分析
二叉搜索树概念二叉搜索树操作1.二叉搜索树的查找2.二叉搜索树的插入3.二叉搜索树的删除二叉搜索树的实现二叉搜索树的性能分析原创 2022-08-23 09:36:30 · 607 阅读 · 31 评论 -
【数据结构】 拿捏二叉树堆排序与遍历
二叉树的存储结构二叉树的堆排序堆的概念堆向上调整算法堆向下调整算法堆排序应用之TopK问题二叉树的遍历链式二叉树创建二叉树二叉树的遍历前序遍历中序遍历后续遍历层序遍历............原创 2022-07-29 10:57:03 · 1149 阅读 · 31 评论 -
【数据结构】手撕二叉树oj练习与经典问题
二叉树经典问题一、结点个数二、叶结点个数三、第K层结点个数四、二叉树的深度五、二叉树查找值为x的节点六、二叉树的销毁七、判断二叉树是否是完全二叉树二叉树OJ练习965. 单值二叉树 - 力扣(LeetCode)100. 相同的树 - 力扣(LeetCode)101. 对称二叉树 - 力扣(LeetCode)572. 另一棵树的子树 - 力扣(LeetCode)二叉树遍历_牛客题霸_牛客网 (nowcoder.com)............原创 2022-08-03 10:50:55 · 512 阅读 · 31 评论 -
【数据结构】一篇深入理解二叉树计算
I.树的概念及结构树的概念树的结构树的专有名词树的表示树在实际中的运用II.二叉树的概念及结构二叉树的概念 特殊的二叉树二叉树的性质完全二叉树小知识III.例题巩固...原创 2022-08-01 09:31:39 · 1505 阅读 · 25 评论 -
链表Oj练习题 纯C语言
链表分割链表分割思路:遍历原链表 把<x的插入到一个链表 把>=×的插入到一个链表 链表1和链表2链接起来假设链表为3 5 1 6 3 4则分为: 3 1 3 5 6 4之后相连即可魔鬼细节:如图所示,如果6是大链的最后一个数,那么greaterTail->next仍然指向3,会成环所以需要greaterTail->next=NULL; 防止死循环/*struct ListNode { int val;......原创 2022-07-29 08:45:26 · 386 阅读 · 19 评论 -
数据结构 - 队列 实现与常见题型(C语言)
目录前言:队列的概念及结构队列的实现队列的定义接口函数实现接口函数完整代码Queue.hQueue.c栈与队列的OJ练习T1、用队列实现栈T2、用栈实现队列T3、设计循环队列栈和队列的用途前言:队列的概念及结构队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出 FIFO(First In First Out)入队列:进行插入操作的一端称为队尾............原创 2022-05-21 10:04:30 · 720 阅读 · 28 评论 -
数据结构 - 栈的实现(c语言)
目录前言:栈的实现方式讨论栈的实现栈的定义接口函数接口函数实现1、初始化栈(StackInit)2、销毁(StackDestroy)3、入栈(StackPush)4、出栈(StackPop)5、返回栈顶数据(StackTop)6、计算栈的大小(StackSize)7、判断栈是否为空(StackIfEmpty)完整代码:Stack.hStack.c前言:栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行.原创 2022-05-19 16:28:38 · 3286 阅读 · 14 评论 -
C语言详解双向链表的基本操作
双链表的定义与接口函数定义双链表接口函数详解接口函数的实现创建新节点(BuyLTNode)初始化双链表(ListInit)双向链表打印(ListPrint)双链表查找(ListFind)双链表销毁(ListDestory)1、双链表pos位置之前插入(ListInsert)2、双链表删除pos位置(ListEarse)3、双向链表尾插(ListPushBack)4、双向链表头插(ListPushFront)5、双链表头删(ListPopF.......原创 2022-05-17 10:04:27 · 3247 阅读 · 19 评论 -
数据结构 - c语言链表操作
目录前言:链表的概念:顺序表和链表的优缺点:链表的结构与定义接口函数详解接口函数的实现创建新节点(BuySListNode)打印(SListPrint)1、尾插(SListPushBack)2、头插(SListPushFront)3、尾删(SListPopBack)4、头删(SListPopFront )5、查找(SListFind)6、指定位置前插(SListInsert)7、删除指定位置节点(SListEar......原创 2022-05-08 18:02:53 · 1456 阅读 · 16 评论 -
数据结构 - 顺序表基本操作
前言:线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结 构,常见的线性表:顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物 理上存储时,通常以数组和链式结构的形式存储。 顺序表 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组 上完成数据的增删查改。 顺序表一般可以分为:..原创 2022-05-07 10:24:11 · 2192 阅读 · 18 评论 -
算法 - 蓝桥杯并查集题型
作用与基本原理:套路:用一道模板题方便讲解;合并集合首先设置一个函数find();find()函数的作用如问题2, 求集合的祖宗节点(while(p[x]!=x) x=p[x] 如果不是根就找上一个,直到找到根为止)元素合并操作:(元素也是集合)开始时每个集合都是一个独立的集合,并且都是等于自己本身下标的数例如:p[5]=5,p[3]=3;如果是M操作的话那么就将集合进行合并,合并的操作是:p[3]=p[5]=5;所以3的...原创 2022-03-29 09:54:02 · 426 阅读 · 19 评论