Doubly Linked List Araya Eleman Ekleme

İkili Bağlantılı Listeye Araya Eleman Ekleme

İkili bağlantılı listeler, her düğümün bir önceki ve bir sonraki düğüme işaret ettiği veri yapılarıdır. Bu, listede ileri ve geri yönde gezinmeyi kolaylaştırır. İkili bağlantılı listeye araya eleman eklemek, listenin ortasına yeni bir düğüm ekleme işlemidir.

Adımlar

İkili bağlantılı listeye araya eleman eklemek için şu adımları izleyin:

  1. Yeni düğüm oluşturun: Eklenecek yeni bir düğüm oluşturun.
  2. Ekleme konumunu bulun: Yeni düğümün ekleneceği konumu belirleyin. Bu, listenin başından veya sonundan belirli bir konum olabilir.
  3. Önceki ve sonraki düğümleri güncelleyin: Yeni düğümün önceki ve sonraki düğümlerini güncelleyin.
  4. Yeni düğümü listeye bağlayın: Yeni düğümü önceki ve sonraki düğümler arasına bağlayın.
  5. Liste başını veya sonunu güncelleyin: Gerekirse, listenin başını veya sonunu yeni düğüme göre güncelleyin.

Kod Örneği

Aşağıdaki C++ kodu, ikili bağlantılı listeye araya eleman ekleme işlemini göstermektedir:

“`cpp

include

using namespace std;

struct Node {
int data;
Node prev;
Node
next;
};

void insertAtMiddle(Node head, int data, int position) {
// Yeni düğüm oluştur
Node
newNode = new Node;
newNode->data = data;

// Ekleme konumunu bul
Node* current = head;
for (int i = 0; i < position – 1; i++) {
current = current->next;
}

// Önceki ve sonraki düğümleri güncelleme
newNode->prev = current;
newNode->next = current->next;
current->next = newNode;

// Yeni düğümü listeye bağlama
if (newNode->next != NULL) {
newNode->next->prev = newNode;
}
}

int main() {
// İkili bağlantılı liste oluşturma
Node* head = new Node;
head->data = 10;
head->prev = NULL;
head->next = NULL;

Node* node2 = new Node;
node2->data = 20;
node2->prev = head;
node2->next = NULL;
head->next = node2;

// Listeye araya eleman ekleme
insertAtMiddle(head, 15, 2);

// Listeyi yazdırma
Node* current = head;
while (current != NULL) {
cout << current->data << ” “;
current = current->next;
}

return 0;
}
“`

Faydalı Kaynaklar


Yayımlandı

kategorisi