Help me to implement the method, you need to change two adjacent nodes in a doubly linked list not by values I really need help, I've already searched all the forums For example, the input to the method at index 0. Input 1->2->3. Output 2->1->3 Entering the method by index2. Input 1->2->3. Output 1->3->2
class DoubleLinkedList:
class Node:
previous_node = None
next_node =None
element = None
def __init__(self,element, next_node = None, previous_node = None) -> None:
self.element = element
self.next_node = next_node
self.previous_node = previous_node
head = None
tail = None
length = 0
def add(self, element):
self.length +=1
if not self.head:
self.head = self.Node(element)
return element
elif not self.tail:
self.tail = self.Node(element, None, self.head)
self.head.next_node = self.tail
return element
else:
self.tail = self.Node(element, None, self.tail)
self.tail.previous_node.next_node = self.tail
return element
def __iter__(self):
node = self.head
while node:
yield node.element
node = node.next_node