Die 17 häufigsten Fragen und Antworten zu Vorstellungsgesprächen mit verlinkten Listen

Hier finden Sie eine verlinkte Liste mit Fragen und Antworten zu Vorstellungsgesprächen für Studienanfänger und erfahrene Kandidaten, die ihren Traumjob bekommen möchten.


1) Erwähnen Sie, was verknüpfte Listen sind?

Eine verknüpfte Liste ist eine Datenstruktur, die eine Sammlung von Elementen speichern kann. Mit anderen Worten: Verkettete Listen können zum Speichern mehrerer Objekte desselben Typs verwendet werden. Jede Einheit oder jedes Element der Liste wird als Knoten bezeichnet. Jeder Knoten hat seine eigenen Daten und die Adresse des nächsten Knotens. Es ist wie eine Kette. Verknüpfte Listen werden zum Erstellen von Diagrammen und Bäumen verwendet.

Kostenloser PDF-Download: Fragen und Antworten zu verlinkten Listen im Vorstellungsgespräch


2) Welche Art der Speicherzuweisung wird für verknüpfte Listen verwendet?

Die dynamische Speicherzuweisung bezieht sich auf verknüpfte Listen.


3) Erwähnen Sie, was Traversal in verknüpften Listen ist?

Der Begriff „Traversal“ bezieht sich auf den Vorgang der Verarbeitung jedes Elements in der Liste.


4) Beschreiben Sie, was ein Knoten in der Linkliste ist. Und benennen Sie die Arten verknüpfter Listen?

Zusammen (Daten + Link) wird als Knoten bezeichnet. Arten von verknüpften Listen sind:

  • Einfach verknüpfte Liste
  • Doppelt verknüpfte Liste
  • Verknüpfte Liste multiplizieren
  • Zirkulär verkettete Liste

5) Erwähnen Sie, was eine einfach verknüpfte Liste ist?

Einfach verknüpfte Listen sind eine Art von Datenstruktur. In einer einfach verknüpften Liste speichert jeder Knoten in der Liste den Inhalt des Knotens und eine Referenz oder einen Zeiger auf den nächsten Knoten in der Liste. Es speichert keine Referenz oder Zeiger auf den vorherigen Knoten.

Fragen zum Vorstellungsgespräch in einer verlinkten Liste
Fragen zum Vorstellungsgespräch in einer verlinkten Liste

6) Erwähnen Sie, was der Unterschied zwischen Linear ist Feld und verknüpfte Liste?

Der Unterschied zwischen linearem Array und verknüpfter Liste ist unten dargestellt:

Linear Array Verknüpfte Liste
Das Löschen und Einfügen ist schwierig. Das Löschen und Einfügen ist problemlos möglich.
Zum Einfügen und Löschen sind Bewegungen erforderlich Zum Einfügen und Löschen sind keine Knotenbewegungen erforderlich
Darin wird Platz verschwendet Darin wird kein Platz verschwendet
Es ist teuer Es ist nicht teuer
Eine bedarfsgerechte Kürzung oder Verlängerung ist nicht möglich Es kann je nach Bedarf reduziert oder erweitert werden
Um jedes Element in Anspruch zu nehmen, ist die gleiche Zeit erforderlich. Um jedes Element in Anspruch zu nehmen, ist eine unterschiedliche Zeitspanne erforderlich.
In aufeinanderfolgenden Speicherplätzen werden Elemente gespeichert. Elemente können an aufeinanderfolgenden Speicherorten gespeichert werden oder auch nicht
Wir können direkt dorthin gelangen, wenn wir zu einem bestimmten Element gehen müssen Um einen bestimmten Knoten zu erreichen, müssen Sie alle Knoten durchlaufen, die vor diesem Knoten liegen.

7) Erwähnen Sie, welche Anwendungen verknüpfte Listen haben?

Anwendungen von verknüpften Listen sind:

  • Verknüpfte Listen werden zum Implementieren von Warteschlangen, Stapeln, Diagrammen usw. verwendet.
  • Bei verknüpften Listen müssen Sie die Größe nicht im Voraus kennen.
  • Mit verknüpften Listen können Sie Elemente am Anfang und Ende der Liste einfügen.

8) Was enthält der Dummy-Header in der verknüpften Liste?

In einer verknüpften Liste enthält der Dummy-Header den ersten Datensatz der tatsächlichen Daten


9) Erwähnen Sie die Schritte zum Einfügen von Daten am Anfang einer einfach verknüpften Liste?

Zu den Schritten zum Einfügen von Daten am Anfang einer einfach verknüpften Liste gehören:

  • Erstellen Sie einen neuen Knoten
  • Fügen Sie einen neuen Knoten ein, indem Sie den Kopfzeiger dem nächsten Zeiger des neuen Knotens zuweisen
  • Aktualisieren des Kopfzeigers auf den Punkt, auf den der neue Knoten zeigt.
Node *head;

void InsertNodeAtFront(int data)

{

/* 1. create the new node*/

Node *temp = new Node;

temp->data = data;

/* 2. insert it at the first position*/

temp->next = head;

/* 3. update the head to point to this new node*/

head = temp;

}

10) Erwähnen Sie, was der Unterschied zwischen einfach und doppelt verknüpften Listen ist.

Ein doppelt verknüpfter Listenknoten enthält drei Felder:

  • Ein ganzzahliger Wert und
  • Zwei Links zu anderen Knoten
  • eins, um auf den vorherigen Knoten zu zeigen und
  • other, um auf den nächsten Knoten zu zeigen.

Während eine einfach verknüpfte Liste nur Punkte zum nächsten Knoten enthält.


11) Erwähnen Sie, welche Anwendungen verknüpfte Listen verwenden.

Sowohl Warteschlangen als auch Stapel werden häufig mithilfe verknüpfter Listen implementiert. Andere Anwendungen sind Listen, Binärbäume, Überspringen, abgerollte verknüpfte Listen, Hash-Tabellen usw.


12) Erklären Sie, wie man ein Element am Anfang der Liste hinzufügt.

Um ein Element am Anfang der Liste hinzuzufügen, müssen Sie Folgendes tun:

  • Erstellen Sie ein neues Element und legen Sie seinen Wert fest
  • Verknüpfen Sie das neue Element so, dass es auf den Kopf der Liste zeigt
  • Legen Sie den Kopf der Liste als unser neues Element fest

Wenn Sie für diesen Vorgang eine Funktion verwenden, müssen Sie die Variable head ändern. Dazu müssen Sie einen Zeiger auf die Zeigervariable übergeben (einen Doppelzeiger). Sie können also den Zeiger selbst ändern.


13) Erwähnen Sie, was der größte Vorteil verknüpfter Listen ist?

Der größte Vorteil verknüpfter Listen besteht darin, dass Sie keine feste Größe für Ihre Liste angeben. Je mehr Elemente Sie zur Kette hinzufügen, desto größer wird die Kette.


14) Erwähnen Sie, wie der erste Knoten aus der einfach verknüpften Liste gelöscht wird.

Zum Löschen des ersten Knotens aus der einfach verknüpften Liste

  • Speichern Sie den aktuellen Start in einem anderen temporären Zeiger
  • Bewegen Sie den Startzeiger um eine Position nach vorne
  • Löschen Sie temporär, d. h. den vorherigen Startknoten, da wir die Version des Startzeigers aktualisiert haben

15) Erwähnen Sie, wie eine einfach verknüpfte Liste vom ersten bis zum letzten angezeigt wird.

Um eine einfach verknüpfte Liste vom ersten bis zum letzten anzuzeigen,

  • Erstellen Sie eine verknüpfte Liste mit create().
  • Sie können die in der globalen Variablen „start“ gespeicherte Adresse nicht ändern, daher müssen Sie eine temporäre Variable „temp“ vom Typ Knoten deklarieren
  • Um vom Anfang zum Ende zu gelangen, sollten Sie die Adresse des Startknotens in der Zeigervariablen, z. B. temp, zuweisen.
struct node *temp;  //Declare temp

temp = start;       //Assign Starting Address to temp

Wenn die Temperatur NULL ist, können Sie sagen, dass der letzte Knoten erreicht ist.

while(temp!=NULL)

{

printf("%d",temp->data);

temp=temp->next;

}

16) Erwähnen Sie, wie ein neuer Knoten in die verknüpfte Liste eingefügt wird, wo freie Knoten verfügbar sein werden.

Um einen neuen Knoten in die verknüpfte Liste einzufügen, steht der freie Knoten in der Verfügbarkeitsliste zur Verfügung.


17) Erwähnen Sie, für welche Headerliste Sie den letzten Knoten gefunden haben, der den Nullzeiger enthält?

Bei einer Grounded-Header-Liste werden Sie feststellen, dass der letzte Knoten den Nullzeiger enthält.

Diese Interviewfragen helfen auch bei Ihrer mündlichen Prüfung

Teilen

6 Kommentare

  1. Es sind wirklich gute Fragen ………………………

  2. Bitte, wie könnte ich dieses Problem lösen?
    (verknüpfte Liste mit Dummy-Head-Knoten)
    Entscheide dich bei zwei verknüpften Listen L1 und L2 für eine Prozedur in Pseudosprache, die eine verknüpfte ADT-Liste verwendet, um L2 nach dem dritten Element vom letzten von L1 einzufügen

    Wenn L1 1-2-3-4-5-6-7-8-9 und L2 1-1-1 ist

    The result is 1-2-3-4-5-6-7-1-1-1-8-9

    1. Avatar Muhannad Shamasneh sagt:

      Sie müssen L1 zuerst mit zwei Zeigern durchlaufen:
      Zeiger1 – einen Schritt vom Kopf entfernt.
      Zeiger2 – 3 Schritte vom Kopf entfernt.
      while (pointer2.next!=null){
      Zeiger2 = Zeiger2.next;
      Zeiger1 = Zeiger1.next;
      }
      // Jetzt haben Sie einen Zeiger 1, der auf den dritten Knoten vom letzten zeigt.
      temp = pointer1.next
      pointer1.next = L2;
      traversL2 bis zum Ende, um das letzte Element zu erhalten ->
      LastElementOfL2.Next = temp;
      ...

Hinterlassen Sie uns einen Kommentar

E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind MIT * gekennzeichnet. *