Топ 17 свързани въпроси и отговори за интервю за списък

Ето въпроси и отговори за интервюта със свързани списъци за новопостъпили, както и за опитни кандидати, за да получат мечтаната работа.

1) Споменете какво представляват свързани списъци?

Свързаният списък е структура от данни, която може да съхранява колекция от елементи. С други думи, свързаните списъци могат да се използват за съхраняване на няколко обекта от един и същи тип. Всяка единица или елемент от списъка се нарича възел. Всеки възел има свои собствени данни и адреса на следващия възел. Това е като верига. Свързаните списъци се използват за създаване на графики и дървета.

Безплатно изтегляне на PDF: Свързан списък с въпроси и отговори за интервю


2) Какъв тип разпределение на паметта се отнася за свързаните списъци?

Динамичното разпределение на паметта се отнася за свързани списъци.


3) Споменете какво е обхождане в свързани списъци?

Терминът Traversal се използва за означаване на операцията по обработка на всеки елемент в списъка.


4) Опишете какво е Node в списъка с връзки? И назовете типовете свързани списъци?

Заедно (данни + връзка) се нарича възел. Видовете свързани списъци са,

  • Единично свързан списък
  • Двойно свързан списък
  • Множествено свързан списък
  • Циркулярен свързан списък

5) Споменете какво е единично свързан списък?

Единично свързаният списък е вид структура на данниВ еднократно свързан списък всеки възел в списъка съхранява съдържанието на възела и препратка или указател към следващия възел в списъка. Не се съхранява никаква препратка или указател към предишния възел.

Въпроси за интервю със свързан списък
Въпроси за интервю със свързан списък

6) Споменете каква е разликата между Linear Array и свързан списък?

Разликата между линеен масив и свързан списък е показана по-долу,

Linear Array Свързан списък
Изтриването и вмъкването са трудни. Изтриването и вмъкването могат да се извършват лесно.
За вмъкване и изтриване се нуждае от движения За вмъкване и изтриване не се изисква движение на възли
В него пространството се губи В него пространството не се губи
Това е скъпо Не е скъпо
Не може да се намалява или разширява според изискванията Може да бъде намален или удължен според изискванията
За да се възползвате от всеки елемент, е необходимо еднакво време. За да се възползвате от всеки елемент, е необходимо различно време.
В последователни места на паметта се съхраняват елементи. Елементите могат или не могат да се съхраняват в последователни места в паметта
Можем да стигнем до там директно, ако трябва да отидем до определен елемент За да достигнете конкретен възел, трябва да преминете през всички онези възли, които идват преди този възел.

7) Споменете какви са приложенията на свързаните списъци?

Приложенията на свързаните списъци са,

  • Свързаните списъци се използват за внедряване на опашки, стекове, графики и др.
  • В свързаните списъци не е необходимо да знаете размера предварително.
  • Свързаните списъци ви позволяват да вмъквате елементи в началото и края на списъка.

8) Какво съдържа фиктивната заглавка в свързания списък?

В свързания списък фиктивната заглавка съдържа първия запис на действителните данни


9) Споменете стъпките за вмъкване на данни в началото на единично свързан списък?

Стъпките за вмъкване на данни в началото на единично свързан списък включват,

  • Създайте нов възел
  • Вмъкнете нов възел, като разпределите указателя на главата към следващия указател на новия възел
  • Актуализиране на указателя на главата до точката на новия възел.
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) Споменете каква е разликата между единично и двойно свързани списъци?

Възлите на двойно свързан списък съдържат три полета:

  • Цяло числова стойност и
  • Две връзки към други възли
  • един, който да сочи към предишния възел и
  • друг, за да посочи следващия възел.

Докато единично свързан списък съдържа точки само към следващия възел.


11) Споменете кои са приложенията, които използват свързани списъци?

Както опашките, така и стековете често се реализират с помощта на свързани списъци. Други приложения са списък, двоично дърво, пропускане, разгънат свързан списък, хеш таблица и др.


12) Обяснете как да добавите елемент в началото на списъка?

За да добавите елемент в началото на списъка, трябва да направите следното:

  • Създайте нов елемент и задайте неговата стойност
  • Свържете новия елемент, за да сочите към началото на списъка
  • Задайте главата на списъка да бъде нашият нов артикул

Ако използвате функция, за да извършите тази операция, трябва да промените променливата head. За да направите това, трябва да подадете указател към променливата указател (двоен указател). така че ще можете да модифицирате самия показалец.


13) Споменете кое е най-голямото предимство на свързаните списъци?

Най-голямото предимство на свързаните списъци е, че не посочвате фиксиран размер за вашия списък. Колкото повече елементи добавите към веригата, толкова по-голяма става веригата.


14) Споменете как да изтриете първия възел от единично свързан списък?

За да изтриете първия възел от единично свързан списък

  • Съхранявайте текущия старт в друг временен указател
  • Преместете началния показалец една позиция напред
  • Изтрийте временния, т.е. предишен начален възел, тъй като имаме актуализирана версия на началния указател

15) Споменете как да показвате единично свързан списък от първия до последния?

За да покажете единично свързан списък от първия до последния,

  • Създайте свързан списък с помощта на create().
  • Не можете да промените адреса, съхранен в глобалната променлива „start“, следователно трябва да декларирате една временна променлива - „temp“ от тип node
  • За да преминете от началото до края, трябва да зададете адреса на началния възел в променливата на указателя, т.е.
struct node *temp;  //Declare temp

temp = start;       //Assign Starting Address to temp

Ако температурата е NULL, можете да кажете, че последният възел е достигнат.

while(temp!=NULL)

{

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

temp=temp->next;

}

16) Споменете как да вмъкнете нов възел в свързан списък, където ще бъде наличен безплатен възел?

За да вмъкнете нов възел в свързания списък, свободният възел ще бъде наличен в списъка с налични.


17) Споменете за кой списък със заглавки ще откриете, че последният възел съдържа нулев указател?

За списък със заземени заглавки ще откриете, че последният възел съдържа нулевия указател.

Тези въпроси за интервюто също ще ви помогнат във вашата viva (устна)

Сподели

6 Коментари

  1. въплъщение Самир казва:

    много добри въпроси ………………………

  2. въплъщение Амрита казва:

    Помага ми толкова много, благодаря

  3. въплъщение Сара казва:

    моля, как мога да разреша този проблем
    (свързан списък с фиктивен главен възел)
    Дадени са два свързани списъка L1 и L2, решете процедура на псевдоезик, която използва ADT свързан списък за вмъкване на L2 след третия елемент от последния от L1

    Ако L1 е 1-2-3-4-5-6-7-8-9 и L2 е 1-1-1

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

    1. въплъщение Муханнад Шамасне казва:

      първо трябва да прекосите L1 с два указателя:
      показалец1 – една крачка от главата.
      показалец 2 – 3 крачки от главата.
      докато (pointer2.next!=null){
      указател2 = указател2.следващ;
      указател1 = указател1.следващ;
      }
      // сега ще имате указател 1, сочещ към 3-тия възел от последния.
      темп = указател1.следващ
      показалец1.следващ = L2;
      traversL2 до края, за да получите последния елемент->
      LastElementOfL2.Next = temp;
      ...

Оставете коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *