LRU CacheDesign a data structure that follows Least Recently Used (LRU) eviction with O(1) get and put operations.