@@ -10,8 +10,7 @@ class DoubleLinkedListNode(Generic[T, U]):
10
10
"""
11
11
Double Linked List Node built specifically for LRU Cache
12
12
13
- >>> node = DoubleLinkedListNode(1,1)
14
- >>> node
13
+ >>> DoubleLinkedListNode(1,1)
15
14
Node: key: 1, val: 1, has next: False, has prev: False
16
15
"""
17
16
@@ -161,9 +160,9 @@ class LRUCache(Generic[T, U]):
161
160
Node: key: 1, val: 1, has next: True, has prev: True,
162
161
Node: key: None, val: None, has next: False, has prev: True
163
162
164
- >>> cache.cache
163
+ >>> cache.cache # doctest: +NORMALIZE_WHITESPACE
165
164
{1: Node: key: 1, val: 1, has next: True, has prev: True, \
166
- 2: Node: key: 2, val: 2, has next: True, has prev: True}
165
+ 2: Node: key: 2, val: 2, has next: True, has prev: True}
167
166
168
167
>>> cache.set(3, 3)
169
168
@@ -174,9 +173,9 @@ class LRUCache(Generic[T, U]):
174
173
Node: key: 3, val: 3, has next: True, has prev: True,
175
174
Node: key: None, val: None, has next: False, has prev: True
176
175
177
- >>> cache.cache
176
+ >>> cache.cache # doctest: +NORMALIZE_WHITESPACE
178
177
{1: Node: key: 1, val: 1, has next: True, has prev: True, \
179
- 3: Node: key: 3, val: 3, has next: True, has prev: True}
178
+ 3: Node: key: 3, val: 3, has next: True, has prev: True}
180
179
181
180
>>> cache.get(2) is None
182
181
True
@@ -250,6 +249,7 @@ def get(self, key: T) -> U | None:
250
249
Returns the value for the input key and updates the Double Linked List.
251
250
Returns None if key is not present in cache
252
251
"""
252
+ # Note: pythonic interface would throw KeyError rather than return None
253
253
254
254
if key in self .cache :
255
255
self .hits += 1
0 commit comments