Junior — Middle
Կարող եք բացատրել, թե ինչ է միակապակցված ցանկը և ինչպես է այն իրականացվում Python-ում?
sobes.tech AI
Պատասխան AI-ից
Միայն միացված ցանկը տվյալների կառուցվածք է, որը բաղկացած է հանգույցներից, որտեղ յուրաքանչյուր հանգույց պարունակում է տվյալներ և հղում հաջորդ հանգույցին ցանկում: Բազմապատկման տարբերակով, տարրերը չեն պահվում հաջորդական հիշողության տարածքում, ինչը թույլ է տալիս արդյունավետ ավելացնել և հեռացնել տարրեր:
Python-ում միացված ցանկի օրինակ:
class Հանգույց:
def __init__(self, տվյալներ):
self.տվյալներ = տվյալներ
self.հետագա = None
class ՄիայնՄիացվածՑանկ:
def __init__(self):
self.գլխավոր = None
def ավելացնել(self, տվյալներ):
նոր_հանգույց = Հանգույց(տվյալներ)
if not self.գլխավոր:
self.գլխավոր = նոր_հանգույց
return
ընթացիկ = self.գլխավոր
while ընթացիկ.հետագա:
ընթացիկ = ընթացիկ.հետագա
ընթացիկ.հետագա = նոր_հանգույց
def ցուցադրել_ցանկը(self):
ընթացիկ = self.գլխավոր
while ընթացիկ:
print(անցյալ.տվյալներ, end=' -> ')
ընթացիկ = ընթացիկ.հետագա
print('None')
# Օգտագործում
sll = ՄիայնՄիացվածՑանկ()
sll.ավելացնել(1)
sll.ավելացնել(2)
sll.ավելացնել(3)
sll.ցուցադրել_ցանկը() # Արտածում՝ 1 -> 2 -> 3 -> None