Sobes.tech
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