Google | Snapshottable Map
4691

Implement SnapshottableMap class.

class Snapshot {
	String get(String key);
}

class SnapshottableMap {
	void put(String key, String value);
	String get(String key);
	Snapshot createSnapshot();
	List<Snapshot> getSnapshots();
}

Example:

SnapshottableMap map = new SnapshottableMap();
Snapshot s0 = map.createSnapshot();

s0.get("name"); // null

map.put("name", "John");
map.put("country", "UK");
Snapshot s1 = map.createSnapshot();
 
s1.get("name"); // "John"
s1.get("country"); // "UK"
 
map.put("name", "Marta");
Snapshot s2 = map.createSnapshot();
 
s2.get("name"); // "Marta"
s2.get("country"; // "UK"
s1.get("name"); // "John"

Related problems:

Comments (6)