Insert Delete GetRandom O(1)

  • 难点在于从list删除一个元素是需要O(n)的,而HashMap中的元素又是无序的。所以这里的一个技巧是,在删除之前,利用HashMap获得该元素的坐标位置,把他和最后一个元素进行交换。这样list上删除最后一个元素就只需要O(1)了
    • 其中list的交换用set

results matching ""

    No results matching ""