线段树接触了也很久,但总是没一个安定的写法,各种花里呼哨的都写过,老实的时候连指针版的都写过。
但款式那么多并没有用,到时候用起来反而坑坑洼洼的,还不如定一个标准模式。
虽然是非递归的线段树代码简单而高效,但是万事慢慢来,从最基础简单的在博客开始写起。
此次我们介绍的是递归版的线段树。
此次我们介绍的是递归版的线段树。
“线段树是一种特殊的区间树“
线段树是什么东西?
简单的说,线段树是把 [1,n] 一段区间不断二分二分,直至每个树的节点是[i,i]的区间
[1,7]
[1,4] [5,7]
[1,2] [3,4] [5,6] [7,7]
[1,1] [2,2] [3,3] [4,4] [5,5] [6,6]
(线段树未必是一个满二叉树,但一定是个平衡二叉树)
/* 讨论在数组的情况下构造*/
Section A 基本操作
一、如何构造?
a) &nb