让我们有n价值观.所有值都false可以更改为true.我想对这些值进行3次操作,并且具有一定的时间复杂度:
val(i)- >返回索引处的值i.时间复杂度 - O(1).change(i)- >将index的值更改i为true.时间复杂度 -
摊销O(1).find(i)- >最接近的索引返回到索引i,包含值
false(如果有false上i然后返回i).时间复杂度 - O(log n).我并不关心空间复杂性.结构在开始时以固定长度初始化.初始化需要多长时间并不重要.
用于这些操作的数据结构应该如何?