981. Time Based Key-Value Store | English | Medium

preview_player
Показать описание
Рекомендации по теме
Комментарии
Автор

class TimeMap:

def __init__(self):
self.dic = collections.defaultdict(list)

def set(self, key: str, value: str, timestamp: int) -> None:
self.dic[key].append((timestamp, value))

def get(self, key: str, timestamp: int) -> str:
items = self.dic[key]
left, right = 0, len(items)
while left < right:
mid = left + right >> 1
if items[mid][0] > timestamp:
right = mid
else:
left = mid + 1
if left == 0: return ''
return items[left - 1][1]

Runtime: 808 ms, faster than 59.05% of Python3 online submissions for Time Based Key-Value Store.
Memory Usage: 69.4 MB, less than 76.08% of Python3 online submissions for Time Based Key-Value Store.

aunnfriends