Я работаю со связанным списком в python.
Вот два класса, которые я написал для создания связанного списка:
class node:
def __init__(self, value):
self.value = value
self.next = None
class linkedList:
def __init__(self):
self.head = None
# Two linked lists are being created:
l1 = linkedList() #1st linked list
l1.head = node(1)
new_node1 = node(2)
l1.head.next = new_node1
l2 = linkedList() #2nd linked list
l2.head = node(10)
new_node2 = node(20)
l2.head.next = new_node2
Теперь я хотел бы создать функцию внутри класса linkedList, которая будет принимать два связанных списка и выполнять над ними различные задачи, такие как: сравнение, объединение связанных списков и т. д.
Но главная проблема в том, что я не совсем уверен, как построить функцию, которая принимает несколько объектов одного класса в качестве входного параметра?
Ваша помощь будет очень признательна.
Заранее спасибо!
В чем проблема? Написать функцию, которая принимает более одного параметра (технически вы написали это уже в коде) или проверить класс объекта?
class linkedList:
#create function of linkedList class which takes exactly 2 linkedList objects:
def function(obj1: linkedList, obj2: linkedList):
pass #do whatever you need to do with those objects
то вы можете применить эту функцию:
linkedList.function(LL1, LL2)
или, альтернативно, вы можете сделать это:
class linkedList:
def function(self, obj: linkedList):
pass
это применит функцию к объекту, из которого она была вызвана, и другому объекту, переданному в качестве аргумента:
LL1.function(LL2)
def compare(l1: linkedList, l2:linkedList) -> int: ...