Dynamic Perfect Hash table or a close relative of it, O(1) queries, amortized O(1) insertion/deletion, O(n) space ...