• 2024-09-06变种线段树 提高篇
    可持久化线段树注意,它的全称为可持久化权值线段树。例题\(1\):可持久化线段树2首先我们考虑几个暴力:对于每次询问,找出区间中的所有数,直接排序求第\(k\)小。这样做的时间复杂度为\(O(nq\logn)\)的。对于每次询问,建出一棵权值线段树,然后权值线段树上二分查找即可。发现
  • 2024-02-13二叉树层次建树+遍历
    1.BiTree层次建树实现使用二叉树的链式存储,必须要构造一个辅助链式队列,用pcur遍历树结点,实现代码如下:代码实现//二叉树层次建树+画图2024-02-12#include<iostream>#include<cstdio>usingnamespacestd;//树结点的数据结构typedefcharElemType;typedefstructT
  • 2023-12-17简单线段树
    一、什么是线段树?线段树是怎样的树形结构?线段树是一种二叉搜索树,每个结点都存储了一个区间,也可以理解成一个线段,你要从这些线段上进行搜索操作得到你想要的答案。线段树能够解决什么样的问题?线段树的适用范围很广,可以在线维护修改以及查询区间上的最值,求和。
  • 2023-04-0914.4二叉树层次建树
    创建function函数////Createdby93757on2023/3/21.//#ifndefINC_1_TREE_FUNCTION_H#defineINC_1_TREE_FUNCTION_H#include<stdio.h>#include<stdlib.h>typedefcharBiElemType;typedefstructBiTNode{BiElemTypec;//c就是书籍上的datast
  • 2023-03-27二叉树(建树|遍历|寻找最大最小深度)
    二叉树基础操作1.实现思路建树:递归从数组中按照层级建立递归:提供6种建树操作(前、中、后序递归和非递归)最大深度:利用回溯|递归实现两种操作最小深度:利用递归实现2.代
  • 2022-10-21线段树
    线段树是一种数据结构,大概长成这个样子:而线段树的每个节点都包含了它的范围以及它里面的数字,每个节点最多有2个子节点,而节点还包含一个附加信息(例如最大值,求和),而现在我们
  • 2022-08-15[NOIP2004 普及组] FBI 树
    试题分析:题目意思是给出一个数字串,全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。在给定规则的基础上建树,并输出建完的树的后序排列。所以我们要用递