Algorithm 针对相同类型的多个查询的优化算法
有一类特殊的算法编码问题要求我们评估多个查询,这些查询可以是两种:Algorithm 针对相同类型的多个查询的优化算法,algorithm,search,optimization,Algorithm,Search,Optimization,有一类特殊的算法编码问题要求我们评估多个查询,这些查询可以是两种: 对一系列数据执行搜索 更新给定范围内的数据 我最近研究的一个例子是(虽然不是唯一的一个): 现在,为了优化我的算法,我有一个想法: 我可以使用动态规划来保留特定范围的搜索结果,并根据需要生成其他范围的数据 例如,如果我必须计算从索引4到7的数组中的数字之和,我已经可以将元素之和保持为4,将元素之和保持为7,这很简单,然后我只需要两个+4个元素的差,即O(1)。但这会引发另一个问题:在更新操作期间,我必须更新更新元素之后所有元素的
(范围部分)查看段树和二元索引树。我对的回答可能有助于解释段树和二元索引树之间的区别。简单地说,要更新一个范围,您需要使用带有延迟更新的段树。我以前使用过BIT,所以我认为它在这个特定的更新中会起作用。但是,如果操作是乘法而不是加法,则使用位有点麻烦。我要去看一段树,好的!分段树似乎适合我!我不知道这是不是最有效率的,但肯定比我的效率高。