我有一张 (xi,f(xi)) 的地图,我的 f(xi) 也在严格增加。我需要以这种方式交换密钥和 val
我的功能的输入:
一张地图
//keys : x0, x1, x2, ..., xn
// vals : f(x_0) f(x1), f(x2), ..., f(xn)
我的函数的输出:一张地图
// key : left_val f(x_0) f(x1), ..., f(xn-1)
// vals : x0, x1, x2, ..., xn
(这里left_val是一个输入参数,我知道它低于f(x0))。我知道我可能没有使用正确的结构,但我真的需要 log(n) 插入和有序键的唯一性......
您将如何有效地实现这一点(即不复制地图)?
提前致谢。