 Bağlantılı bir liste verildiğinde, her iki bitişik düğümü değiştirin ve başını döndürün. Örneğin, giriş listesi 1 -> 2 -> 3 -> 4 ise, çıkış 2 -> 1 -> 4 -> 3 olmalıdır.
Bağlantılı bir listedeki her iki bitişik düğümü değiştirmek için aşağıdaki algoritmayı kullanabilirsiniz: 1. Sahte bir düğüm oluşturun ve onu orijinal listenin başına getirin. 2. Bitişik düğümlerin her bir çiftini değiştirerek listede gezinin. 3. Sahte düğümü değiştirilen listenin yeni başına işaret edecek şekilde güncelleyin. 4. Sahte düğümün sonraki düğümünü listenin yeni başı olarak döndürün. İşte bu algoritmayı uygulamak için Python kodu: ``` class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next def swapPairs(head: ListNode) -> ListNode: dummy = ListNode(0) dummy.next = head prev = dummy iken prev.next ve prev.next.next: birinci = önceki.sonraki saniye = birinci.sonraki önceki.sonraki, saniye.sonraki, birinci.sonraki = ikinci, birinci , second.next prev = ilk dönüş dummy.next ``` Bu kod, bağlantılı listede tek bir düğümü temsil eden bir 'ListNode' sınıfı oluşturur. SwapPairs işlevi orijinal listenin başını alır ve değiştirilen listenin başını döndürür. Algoritma, orijinal listenin başına işaret eden sahte bir düğüm oluşturarak çalışır. Ardından, bitişik düğümlerin her bir çiftini değiştirerek listede gezinmek için bir "while" döngüsü kullanır. "önceki" değişkeni, takastan sonra "sonraki" işaretçisini güncelleyebilmesi için önceki düğümün izini tutar. "while" döngüsü tamamlandığında, yapay düğümün "sonraki" işaretçisi değiştirilen listenin yeni başına işaret eder, böylece işlev o düğümü döndürür.