Skip to content

Commit 28212f9

Browse files
committed
Refactor set method to improve existing cache handling
1 parent d41563f commit 28212f9

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

Sprint-2/implement_lru_cache/lru_cache.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,12 @@ def __init__(self, limit):
99
self.storage = OrderedDict()
1010

1111
def set(self, key, value):
12-
if len(self.storage) < self.limit:
13-
self.storage[key] = value
14-
else:
15-
self.storage.popitem(last=False)
16-
self.storage[key] = value
12+
if len(self.storage) == self.limit:
13+
if key in self.storage:
14+
self.storage.move_to_end(key)
15+
else:
16+
self.storage.popitem(last=False)
17+
self.storage[key] = value
1718

1819
def get(self, key):
1920
if key in self.storage:

0 commit comments

Comments
 (0)