这一个题目是求一个区间内重复数字的最大次数。
这题有一个特点,数字是递增滴,相同的数字肯定是连续的。
将相同的数字看做一个部分,hash保存每个数字属于哪个部分。对所有的部分建一颗二叉树,保存此区间内最大的重复数字的个数。
查询的时候分3中情况
1 在同一个部分,直接 尾 - 头 + 1就是结果
2 只差一个部分,分开算,在各个部分里面重复多少次,比较一下
3 中间有很多个部分,那么可以先根据2计算出两头的,在通过二叉树查询最大的重复数字个数
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include