Python solution SortedSet.
\nfrom sortedcontainers import SortedSet\nclass NumberContainers:\n\n    def __init__(self):\n        self.d1 = defaultdict(SortedSet)\n        self.d2 = {}\n  
```\nfrom sortedcontainers import SortedSet\nclass NumberContainers:\n\n    def __init__(self):\n        self.d1 = defaultdict(SortedSet)\n        self.d2 = {}\n        \n\n    def change(self, index: int, number: int) -> None:\n        if index in self.d2:\n            self.d1[self.d2[index]].discard(index)\n            self.d2[index]=number\n            self.d1[number].add(index)\n            \n        else:\n            self.d2[index]=number\n            self.d1[number].add(index)\n\n    def find(self, number: int) -> int:\n        #print(self.d1)\n        if number in self.d1 and len(self.d1[number])>0:\n            return self.d1[number][0]\n        else:\n            return -1\n            \n\n\n# Your NumberContainers object will be instantiated and called as such:\n# obj = NumberContainers()\n# obj.change(index,number)\n# param_2 = obj.find(number)\n```
['Ordered Set', 'Python']