It is the classic problem of designing efficient data structures that implement Associative Arrays.