Introducere în structurile de date și algoritmi interviuri și răspunsuri

Structura datelor este un mod care definește, stochează și preia datele într-un format structural și sistematic. O structură de date conține diferite tipuri de seturi de date. Diferite tipuri de date sunt disponibile pentru diferite tipuri de aplicații, iar unele dintre date sunt foarte specializate pentru sarcini specifice. Un algoritm este o procedură pas cu pas cu un set de instrucțiuni, astfel încât să se execute într-o manieră adecvată pentru a obține rezultatul dorit. În matematică și informatică, un algoritm înseamnă de obicei o mică procedură care rezolvă o problemă recurentă.

Mai jos sunt top Structuri de date și algoritmi de interviuri 2018 Întrebări și răspunsuri:

Dacă sunteți în căutarea unui loc de muncă care are legătură cu structurile de date și algoritmii, trebuie să vă pregătiți pentru întrebările de interviu pentru structurile de date și algoritmii din 2018. Deși fiecare interviu este diferit și sfera unui loc de muncă este, de asemenea, diferită, vă putem ajuta cu cele mai importante întrebări și răspunsuri la intervale de date și algoritmi, care vă vor ajuta să faceți saltul și să vă obțineți succes în interviu.

Aceste întrebări de vârf sunt împărțite în două părți:

Partea 1 - Structuri de date și algoritmi Întrebări de interviu (de bază)

Această primă parte acoperă structurile de date și răspunsurile la interviu și algoritmi de interviu.

1. Ce este o structură de date?

Răspuns:
O structură de date este o modalitate de definire, stocare și preluare a datelor într-un mod structural și sistematic. O structură de date poate conține un tip diferit de date. Diferite tipuri de structuri de date sunt potrivite diferitelor tipuri de aplicații, iar unele sunt extrem de specializate în sarcini specifice.

2. Care sunt diferitele structuri de date disponibile?

Răspuns:
Disponibilitatea structurii datelor poate varia în funcție de limbajele de programare. Structurile de date disponibile în mod obișnuit sunt lista, tablourile, stiva, cozile, graficul, arborele etc.

3. Ce este un algoritm?

Răspuns:
Un algoritm este o procedură pas cu pas, care definește un set de instrucțiuni care trebuie executate în anumite ordine pentru a obține rezultatul dorit. Un program de calculator poate fi privit ca un algoritm elaborat. În matematică și informatică, un algoritm înseamnă de obicei o mică procedură care rezolvă o problemă recurentă.

Haideți să trecem la următoarea întrebare privind interviurile privind structurile de date și algoritmii

4. Diferențiază structura fișierului de structura de stocare.

Răspuns:
De fapt, diferența cheie este zona de memorie accesată. Atunci când aveți de-a face cu structura care se află în memoria principală a sistemului informatic, aceasta este denumită structură de stocare. Atunci când avem de-a face cu o structură auxiliară, ne referim la aceasta ca structuri de fișiere.

5. Ce este o listă de legături?

Răspuns:
O listă de legături este o listă de elemente de date conectate cu link-uri, adică indicatoare sau referințe. Majoritatea limbajului modern de programare la nivel înalt nu oferă caracteristica accesării directe a unei locații de memorie, prin urmare, lista de legături nu este acceptată în ele sau disponibilă sub formă de funcții încorporate. În informatică, o listă legată este o colecție liniară de elemente de date, în care ordinea liniară nu este dată de plasarea lor fizică în memorie. În schimb, fiecare element indică spre următorul. Este o structură de date formată dintr-un grup de noduri care reprezintă împreună o secvență.

6. Ce este stiva?

Răspuns:
În structura de date, o stivă este un tip de date abstracte (ADT) utilizat pentru stocarea și preluarea valorilor în metoda Last In First Out. Stiva este memoria alocată ca spațiu zgârietor pentru un fir de execuție.

7. De ce folosim stive?

Răspuns:
O structură de stivă restricționează dramatic modul în care elementele sunt introduse, preluate și eliminate: elementul cel mai recent introdus în stivă este singurul care poate fi recuperat sau eliminat. Stivele urmează metoda LIFO și adăugarea și regăsirea unui element de date durează doar Ο (n) timp. Stivele sunt utilizate acolo unde trebuie să accesăm datele în ordinea inversă a sosirii lor. Stivele sunt utilizate în mod obișnuit în apelurile funcționale recursive, analizarea expresiilor, trecerea în profunzime a graficelor etc.

Partea 2 - Structuri de date și algoritmi Întrebări de interviu (avansate)

Să aruncăm acum o privire la structurile avansate de date și întrebările de interviu ale algoritmilor.

8. Ce operații pot fi efectuate pe stive?

Răspuns:
Operațiunile de mai jos pot fi efectuate pe o stivă -
• push () - adaugă un element la stivă - Insertion
• pop () - elimină elementul de stivă superior - Ștergere
• peek () - dă o valoare a unui element de top fără a-l îndepărta -Traversal
• isempty () - verifică dacă o stivă este goală - Nu verifică
• isfull () - verifică dacă o stivă este plină - Fără spațiu

9. Ce este o coadă în structura de date?

Răspuns:
Coada este o structură de date abstractă, oarecum similară cu stiva. Spre deosebire de stivă, o coadă este deschisă la ambele capete. Un capăt este întotdeauna utilizat pentru a insera date (enqueue), iar celălalt este folosit pentru a elimina date (dequeue). Coada urmează metodologia First-In-First-Out, adică la elementul de stocare întâi va fi accesat mai întâi.

10. Ce este căutarea liniară?

Răspuns:
Căutarea liniară încearcă să găsească un element într-un tip de date ordonat secvențial. Aceste elemente de date aranjate secvențial, cunoscute sub numele de tablă sau listă, sunt accesibile pentru creșterea locației memoriei. Căutarea liniară compară elementul de date preconizat cu fiecare dintre elementele de date din listă sau tablou. Complexitatea timpului de caz mediu al căutării liniare este Ο (n), iar complexitatea cazurilor cele mai grave este Ο (n2). Datele din tablourile / listele țintă nu trebuie sortate.

Haideți să trecem la următoarea întrebare privind interviurile privind structurile de date și algoritmii

11. Ce este o căutare binară?

Răspuns:
O căutare binară funcționează numai pe listele sau tablele sortate. Această căutare selectează mijlocul care împarte întreaga listă în două părți. În primul rând, se compară mijlocul.
Această căutare compară mai întâi valoarea țintă cu mijlocul listei. Dacă nu se găsește, atunci se ia o decizie cu privire la vreme. În informatică, căutarea binară, cunoscută și sub denumirea de căutare la jumătate de interval, căutare logaritmică sau chop binar, este un algoritm de căutare care găsește poziția unei valori țintă într-un tablou sortat.

12. Ce este un grafic?

Răspuns:
Un grafic este o reprezentare picturală a unui set de obiecte unde unele perechi de obiecte sunt conectate prin legături. Obiectele interconectate sunt reprezentate de puncte denumite vârfuri, iar legăturile care leagă vârfurile se numesc muchii. O structură de date a unui grafic constă dintr-un set finit (și posibil mutabil) de vârfuri sau noduri sau puncte, împreună cu un set de perechi neordonate ale acestor vârfuri pentru un grafic nedirectat sau un set de perechi ordonate pentru un grafic direcționat.

13. Ce este o funcție recursivă?

Răspuns:
O funcție recursivă este una care se numește, direct sau apelează o funcție care la rândul ei o numește. Fiecare funcție recursivă urmărește proprietățile recursive - criterii de bază în care funcțiile nu se mai numesc și abordarea progresivă în care funcțiile încearcă să îndeplinească criteriile de bază în fiecare iterație. O aplicație importantă a recursivității în informatică este definirea structurilor de date dinamice, cum ar fi Liste și arbori.

14. Ce este un turn din Hanoi?

Răspuns:
Turnul Hanoiului, este un puzzle matematic care constă din trei turnuri (pivnițe) și mai mult de un inel. Toate inelele au dimensiuni diferite și stivuite unul pe celălalt, acolo unde discul mare este întotdeauna sub discul mic. Scopul este de a muta turnul unui disc de la o coloană la alta, fără a-i rupe proprietățile. Obiectivul acestui joc este de a muta discurile unul câte unul de la prima buclă la ultima buclă. Și există o singură condiție, nu putem plasa un disc mai mare pe un disc mai mic.

15. Dă câteva exemple de algoritmi lacomi.

Răspuns:
Problemele prezentate mai jos își găsesc soluția folosind o abordare lacomă a algoritmului -
• Problema vânzătorului în călătorie
• Primul algoritm al arborelui minuscul Spanning al lui Prim
• Algoritmul Minimal Spanning Tree din Kruskal
• Algoritmul Minimal Spanning Tree al lui Dijkstra
• Grafic - harta de colorat
• Grafic - Vertex Cover
• Problema cu rucsacul
• Problema de planificare a locurilor de muncă

Articol recomandat

Acesta a fost un ghid pentru Lista structurilor de date și a algoritmilor Întrebări și răspunsuri la interviu, astfel încât candidatul să poată împărți cu ușurință aceste Structuri de date și întrebări de interviu algoritmi. De asemenea, puteți consulta următoarele articole pentru a afla mai multe -

  1. 10 Cele mai bune structuri de date și algoritmi C ++ | Elementele de bază
  2. Cea mai bună alegere a limbilor de programare pentru învățarea algoritmilor
  3. Întrebări la interviu SSRS - Cum să crezi cele mai bune 10 întrebări
  4. Întrebări de interviu pentru securitatea rețelei - Cele mai solicitate întrebări