From fcc04a58a0b7df7f70dcec2dbc03cfe18bf59ae6 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:23:09 +0300 Subject: [PATCH 01/20] Fix bug for data_structures/linked_list/doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 3d3bfb0cde30..732f133b8cc5 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -104,9 +104,7 @@ def insert_before_node(self, node: Node, node_to_insert: Node) -> None: node.previous = node_to_insert - def insert_after_node(self, node: Node | None, node_to_insert: Node) -> None: - assert node is not None - + def insert_after_node(self, node: Node, node_to_insert: Node) -> None: node_to_insert.previous = node node_to_insert.next = node.next From f4cdc24a5f45c5f91272325b1bfda128c3b5b68b Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:27:05 +0300 Subject: [PATCH 02/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 732f133b8cc5..d468d35800c4 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -81,8 +81,9 @@ def set_head(self, node: Node) -> None: self.insert_before_node(self.head, node) def set_tail(self, node: Node) -> None: - if self.head is None: - self.set_head(node) + if self.tail is None: + self.head = node + self.tail = node else: self.insert_after_node(self.tail, node) From afeb1dd9b1f3ca310283b38b9b0e1921295eca80 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:32:15 +0300 Subject: [PATCH 03/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index d468d35800c4..0970859ee29f 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -236,6 +236,8 @@ def create_linked_list() -> None: 7 8 9 + >>> linked_list = LinkedList() + >>> linked_list.insert_at_position(position=1, value=10) """ From 023ad1815df44e46c287da75fa48be5d68fd4053 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:35:07 +0300 Subject: [PATCH 04/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 0970859ee29f..589f1279f011 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -126,7 +126,7 @@ def insert_at_position(self, position: int, value: int) -> None: return current_position += 1 node = node.next - self.insert_after_node(self.tail, new_node) + self.set_tail(new_node) def get_node(self, item: int) -> Node: node = self.head @@ -238,6 +238,7 @@ def create_linked_list() -> None: 9 >>> linked_list = LinkedList() >>> linked_list.insert_at_position(position=1, value=10) + >>> linked_list """ From e84028d07b800083d301d9ed6e8181e0621f6724 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:37:21 +0300 Subject: [PATCH 05/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 1 + 1 file changed, 1 insertion(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 589f1279f011..fab48cd72c33 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -239,6 +239,7 @@ def create_linked_list() -> None: >>> linked_list = LinkedList() >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list + LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) """ From 551bab4e6001bfb955e5a0039993fb1a2be8d247 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:39:37 +0300 Subject: [PATCH 06/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index fab48cd72c33..d690a4c8c9e3 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -240,6 +240,10 @@ def create_linked_list() -> None: >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) + >>> linked_list.insert_at_position(position=2, value=20) + >>> linked_list.insert_at_position(position=1, value=30) + >>> linked_list.insert_at_position(position=2, value=40) + >>> linked_list.insert_at_position(position=3, value=50) """ From 091b5cebfefd3b8b307dde780e8cc8ed6a9c4296 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:41:56 +0300 Subject: [PATCH 07/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index d690a4c8c9e3..fd0c776f963a 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -241,9 +241,13 @@ def create_linked_list() -> None: >>> linked_list LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) >>> linked_list.insert_at_position(position=2, value=20) + >>> linked_list >>> linked_list.insert_at_position(position=1, value=30) + >>> linked_list >>> linked_list.insert_at_position(position=2, value=40) + >>> linked_list >>> linked_list.insert_at_position(position=3, value=50) + >>> linked_list """ From 306a0731336722e6a1e3456173d05534be69d9d0 Mon Sep 17 00:00:00 2001 From: MaximSmolskiy Date: Tue, 1 Apr 2025 23:44:06 +0300 Subject: [PATCH 08/20] Fix --- data_structures/linked_list/doubly_linked_list_two.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index fd0c776f963a..fc15f31ed6b8 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -237,17 +237,24 @@ def create_linked_list() -> None: 8 9 >>> linked_list = LinkedList() + >>> linked_list + >>> str(linked_list) >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list + >>> str(linked_list) LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) >>> linked_list.insert_at_position(position=2, value=20) >>> linked_list + >>> str(linked_list) >>> linked_list.insert_at_position(position=1, value=30) >>> linked_list + >>> str(linked_list) >>> linked_list.insert_at_position(position=2, value=40) >>> linked_list + >>> str(linked_list) >>> linked_list.insert_at_position(position=3, value=50) >>> linked_list + >>> str(linked_list) """ From 37459ac17edee0f15a43217ec3e46dfaa212cdca Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:46:34 +0300 Subject: [PATCH 09/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 1 + 1 file changed, 1 insertion(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index fc15f31ed6b8..596b2c0b40f0 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -238,6 +238,7 @@ def create_linked_list() -> None: 9 >>> linked_list = LinkedList() >>> linked_list + LinkedList(head=None, tail=None) >>> str(linked_list) >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list From 0ac6fde32537bec3cc349899161993f4eb980d9e Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:48:45 +0300 Subject: [PATCH 10/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 1 + 1 file changed, 1 insertion(+) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 596b2c0b40f0..9137d269870c 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -240,6 +240,7 @@ def create_linked_list() -> None: >>> linked_list LinkedList(head=None, tail=None) >>> str(linked_list) + '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list >>> str(linked_list) From 860356183b3055dcb79eeb94bd2a19c313ba0a05 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:49:24 +0300 Subject: [PATCH 11/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 9137d269870c..2c5fdafedb3d 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -243,8 +243,8 @@ def create_linked_list() -> None: '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list - >>> str(linked_list) LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) + >>> str(linked_list) >>> linked_list.insert_at_position(position=2, value=20) >>> linked_list >>> str(linked_list) From fab96743c86c5af8e778f5801aae379e160fba1f Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:52:48 +0300 Subject: [PATCH 12/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 2c5fdafedb3d..0b08dac3728e 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -245,18 +245,23 @@ def create_linked_list() -> None: >>> linked_list LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) + '10' >>> linked_list.insert_at_position(position=2, value=20) >>> linked_list >>> str(linked_list) + '10 20' >>> linked_list.insert_at_position(position=1, value=30) >>> linked_list >>> str(linked_list) - >>> linked_list.insert_at_position(position=2, value=40) + '30 10 20' + >>> linked_list.insert_at_position(position=3, value=40) >>> linked_list >>> str(linked_list) - >>> linked_list.insert_at_position(position=3, value=50) + '30 10 40 20' + >>> linked_list.insert_at_position(position=5, value=50) >>> linked_list >>> str(linked_list) + '30 10 40 20 50' """ From d6d089a21fde4db9de13d9f08f534ac08771e475 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:56:24 +0300 Subject: [PATCH 13/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 0b08dac3728e..e2c070646bc2 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -243,23 +243,20 @@ def create_linked_list() -> None: '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list - LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) + LinkedList( + head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) - >>> linked_list >>> str(linked_list) '10 20' >>> linked_list.insert_at_position(position=1, value=30) - >>> linked_list >>> str(linked_list) '30 10 20' >>> linked_list.insert_at_position(position=3, value=40) - >>> linked_list >>> str(linked_list) '30 10 40 20' >>> linked_list.insert_at_position(position=5, value=50) - >>> linked_list >>> str(linked_list) '30 10 40 20 50' """ From 266e5fefa6ef58e07e5a3ed07b27a2b86e7ffec4 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Tue, 1 Apr 2025 23:58:47 +0300 Subject: [PATCH 14/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index e2c070646bc2..a338c3cf3ade 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -244,7 +244,8 @@ def create_linked_list() -> None: >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list LinkedList( - head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) + head=Node(data=10, previous=None, next=None), + tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From c6ec05f48982142d1404f6bae4fa2feb00935ca7 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:02:38 +0300 Subject: [PATCH 15/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index a338c3cf3ade..df266deff8f0 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -243,9 +243,8 @@ def create_linked_list() -> None: '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list - LinkedList( - head=Node(data=10, previous=None, next=None), - tail=Node(data=10, previous=None, next=None)) + LinkedList(head=Node(data=10, previous=None, next=None), + tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From f98067ce1b6446e42a086566ad6633f9ddbcc7c6 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:05:09 +0300 Subject: [PATCH 16/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index df266deff8f0..2c92227eb25f 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -244,7 +244,7 @@ def create_linked_list() -> None: >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list LinkedList(head=Node(data=10, previous=None, next=None), - tail=Node(data=10, previous=None, next=None)) + tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From dc9f1133d3ace5d29b6ca7151369e7f54e379327 Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:07:18 +0300 Subject: [PATCH 17/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 2c92227eb25f..45fdcbb6a526 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -244,7 +244,7 @@ def create_linked_list() -> None: >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list LinkedList(head=Node(data=10, previous=None, next=None), - tail=Node(data=10, previous=None, next=None)) + ... tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From 11ae98ec45080085a60c2af19823933c68fcadec Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:10:28 +0300 Subject: [PATCH 18/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 45fdcbb6a526..82a24922c915 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -243,8 +243,7 @@ def create_linked_list() -> None: '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list - LinkedList(head=Node(data=10, previous=None, next=None), - ... tail=Node(data=10, previous=None, next=None)) + LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From 2ac2c9c5386884a404cbce72d1ea93d4adc6220b Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:12:13 +0300 Subject: [PATCH 19/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 82a24922c915..355159677e5e 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -243,7 +243,7 @@ def create_linked_list() -> None: '' >>> linked_list.insert_at_position(position=1, value=10) >>> linked_list - LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) + LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) # noqa: E501 >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20) From 978c9b5b40d83d73b6ce905d52df4e83998ce1fa Mon Sep 17 00:00:00 2001 From: Maxim Smolskiy Date: Wed, 2 Apr 2025 00:13:52 +0300 Subject: [PATCH 20/20] Update doubly_linked_list_two.py --- data_structures/linked_list/doubly_linked_list_two.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/data_structures/linked_list/doubly_linked_list_two.py b/data_structures/linked_list/doubly_linked_list_two.py index 355159677e5e..8c93cddd5d31 100644 --- a/data_structures/linked_list/doubly_linked_list_two.py +++ b/data_structures/linked_list/doubly_linked_list_two.py @@ -237,13 +237,7 @@ def create_linked_list() -> None: 8 9 >>> linked_list = LinkedList() - >>> linked_list - LinkedList(head=None, tail=None) - >>> str(linked_list) - '' >>> linked_list.insert_at_position(position=1, value=10) - >>> linked_list - LinkedList(head=Node(data=10, previous=None, next=None), tail=Node(data=10, previous=None, next=None)) # noqa: E501 >>> str(linked_list) '10' >>> linked_list.insert_at_position(position=2, value=20)