Google 面经题讨论

给三个方法:ADD(i, obj), RM(i), MOVE(i, j), 要求:用这三个方法操作old list使它变成new list,要求是如何一个obj在old和new list里面都存在,那么就要用move来移动这个obj。

我自己的想法是:
step 1: 用两个hashmap,找出需要add和remove的obj进行操作
step 2: 还是用两个hashmap, 统计obj分别在两个list出现的index做move操作。

不知道这样是否可行,或者有更高效的做法请赐教

这个什么意思?举个例子吧

我理解的是,比如说 list1 是 [obj1, obj3], list2是 [obj3, obj2], 就要把obj3 move到第一的位置,remove obj1, add obj2,这样就跟list2完全一样了

这题最后要求返回什么?

面经里没有说诶,我猜是返回变化后的list1?

需求不明确,没法看啊