Sobes.tech
Junior — Middle

Мо метавонед шарҳ диҳед, ки односанҷиши оддӣ чист ва чӣ гуна дар Python амалӣ мешавад?

sobes.tech AI

Ҷавоб аз AI

Ягона пайвандаги рўйхат — бу маълумотлар тузилмаси бўлиб, у узилган ҳолда ҳар бир узилган маълумотлар ва кейинги узилганга ишора қилади. Масивдан фарқли ўлароқ, элементлар бир хил ёдлаш жойида сақланмайди, бу эса элементларни самарали қўшиш ва ўчириш имконини беради.

Pythonда янгича пайвандаги рўйхатни амалга ошириш мисоли:

class Узилган:
    def __init__(self, маълумот):
        self.маълумот = маълумот
        self.keyingi = None

class ЯгонаПайвандагиРўйхат:
    def __init__(self):
        self.бош = None

    def қўшиш(self, маълумот):
        янги_узилган = Узилган(маълумот)
        if not self.бош:
            self.бош = янги_узилган
            return
        ҳозирги = self.бош
        while ҳозирги.keyingi:
            ҳозирги = ҳозирги.keyingi
        ҳозирги.keyingi = янги_узилган

    def рўйхатни_чоп_этиш(self):
        ҳозирги = self.бош
        while ҳозирги:
            print(ҳозирги.маълумот, end=' -> ')
            ҳозирги = ҳозирги.keyingi
        print('None')

# Қўлланиш
sll = ЯгонаПайвандагиРўйхат()
sll.қўшиш(1)
sll.қўшиш(2)
sll.қўшиш(3)
sll.рўйхатни_чоп_этиш()  # Чиқиш: 1 -> 2 -> 3 -> None