981. Time Based Key-Value Store
Create a timebased key-value store class TimeMap
, that supports two operations.
1. set(string key, string value, int timestamp)
Stores the
key
andvalue
, along with the giventimestamp
.
2. get(string key, int timestamp)
Returns a value such that
set(key, value, timestamp_prev)
was called previously, withtimestamp_prev <= timestamp
.If there are multiple such values, it returns the one with the largest
timestamp_prev
.If there are no values, it returns the empty string (
""
).
Example 1:
Example 2:
Note:
All key/value strings are lowercase.
All key/value strings have length in the range
[1, 100]
The
timestamps
for allTimeMap.set
operations are strictly increasing.1 <= timestamp <= 10^7
TimeMap.set
andTimeMap.get
functions will be called a total of120000
times (combined) per test case.
解题要点:
先用dict套list的来存key和val,再用binary search来查找合适的key。
Last updated
Was this helpful?