Algoritmi intervjuu küsimuste ja vastuste sissejuhatus

Tööintervjuu ettevalmistamine algoritmis. Olen kindel, et soovite teada kõige tavalisemaid 2019. aasta algoritmi intervjuu küsimusi ja vastuseid, mis aitavad teil algoritmi intervjuu hõlpsalt lahti saada. Allpool on nimekiri teie päästmiseks pakutavatest algoritmidega seotud intervjuudest ja vastustest.

Allpool on loetelu 2019. aasta algoritmi intervjuu küsimustest ja vastustest, mida saab värskelt ja kogemuste saamiseks intervjuu käigus küsida.

1.Kirjutage algoritm stringi ümberpööramiseks. Näiteks kui minu string on „vahbunA”, siis on mu tulemus „Anubhav”.

Vastus:
1. samm: alustage
2. samm: võtke kaks muutujat I ja j.
3. samm: j paigutatakse viimasele tähemärgile (tehniliselt saame seda teha pikkuse järgi (string) -1)
4. samm: Olen paigutatud esimesele tähemärgile (saame seda teha stringi abil (0))
5. samm: string (i) on vahetatud keel (j) 6. samm: suurendamine I 1-ga
7. samm: suurendage J 1 võrra
8. samm: kui 'I'> 'j', jätkake 3. toiminguga
9. samm: lõpetage

2.Sõlme lisamiseks lingitud loendisse kirjutage algoritm, eeldusel, et lingitud loend on juba sorteeritud.

Vastus:
1. juhtum: Kui lingitud loend on tühi, tehke sõlm peaga ja tagastage see.
Kood: Uus_sõlm-> Järgmine = pea;
pea = Uus_sõlm
2. juhtum: sisestage sõlm keskele
Kood: Kuigi (P! = Insert_position)
(
P = p-> järgmine;
)
Store_next = P-> Järgmine;
P-> Next = New_Node;
New_Node-> Next = Store_next;
3. juhtum: sisestage sõlm lõppu
Kood: Kuigi (P-> järgmine! = Null)
(
P = P-> järgmine;
)
P-> Next = New_Node;
New_Node-> Next = null;

3.Kirjutage mullide sortimise algoritm.

Vastus: Me rakendame mullide sortimise algoritmi C-keele kaudu.
1. samm: korrake 2. ja 3. sammu, kui I = 1 kuni 10
2. samm: seadke j = 1
3. samm: korrake, kui j <= n (kus n on massiivi elementide arv)
(Kui a (i) <a (j), siis vahetage a (i) ja (j) (kui lõpp)
Seadke j = j + 1
(Sisemise silmuse lõpp) (1. etapi välise silmuse lõpp) 4. samm: väljuge

4.Kirjutage Heapsorti algoritm.

Vastus:
1. samm: kuna puu vastab omadusele max-Heap, salvestatakse suurim üksus juursõlme.
2. samm: eemaldage juurelement ja pange massiivi lõppu (n-ndas positsioonis) puu viimane osa (hunnik) vabasse kohta.
3. samm: vähendage hunniku suurust ühe võrra ja kuhjake uuesti juurelementi, nii et meil oleks juure kõige kõrgem element.
4. samm: protseduuri korratakse, kuni kõik loendi üksused on sorteeritud.

5.Kirjutage Fibonacci otsingu algoritm.

Vastus:
1. samm: A on sorted_int_array;
2. samm: võtke üks muutuja c
3. samm: Fib2 = 1, Fib1 = 1 ja fib = 2
4. samm: kui fib <n teha (kus n on elemendi arv loendis)
5. samm: määrake muutuja
Fib2 = Fib1
Fib1 = Fib
Fib = Fib1 + Fib2
Lõpeta samal ajal
6. samm: määrake väärtus ajutisele muutujale I = 0, nihe = 0;
7. samm: kui Fib> 1 tehke
I = min (nihe + Fib2, n)
Kui c <A (i), siis
Fib = Fib2
Fib1 = Fib1 - Fib2
Fib2 = Fib - Fib1
Muud kui c> A (i), siis
Fib = Fib1;
Fib1 = Fib2;
Fib2 = Fib - Fib1;
Nihe = I;
Muu
Naase tõsi
Lõpeta kui
Lõpeta samal ajal
Tagasi vale

6.Kirjutage korstnas tõuke- ja hüpikfunktsioonide algoritm.

Vastus: tõukelülitamiseks
Protseduuri lisamine (punkt, pinu, N, ülemine)
(Sisestage element "korstnasse maksimaalse suurusega" n ", ülaosas on elementide arv, mis on praegu korstnas)
1. samm: kas virn on üle täis?
Kui (ülemine> = N)
Korstnat on ületäitunud
Välju
2. samm: kui virn ei täitu, suurendage silmust
Ülaosa = Üles + 1
3. samm: sisestage element
Stack (ülemine) = element
4. samm: väljuge
POP-operatsiooni jaoks
1. samm. Kontrollige, kas virn on alavoolu, tähendab, et see on tühi
Kui (ülemine <= 0)
Virn on tühi
Välju
2. samm: kui virn pole alavoolu, kustutage element
Üksus = virn (ülemine) 3. samm: ülemise väärtuse vähendamine
Üles = Üles - 1
4. samm: väljuge

7.Kirjutage järjekorra sisestamise ja kustutamise algoritm.

Vastus: sisestamiseks
Protseduuri lisamine (järjekord, F, R, N, punkt)
(See lisab "järjekorda" sõna "R" järele (harv), kus "n" on massiivi suurus.)
1. samm: kontrollige, kas järjekord on ületanud, see tähendab, et järjekord on täis
Kui (R> = N)
Järjekord on täis
Välju
2. samm: Kui järjekord ei ole ületäitunud, suurendage aasat
R = R + 1
3. samm: sisestage element järjekorda
Järjekord (R) = üksus
4. samm: „F” (esi) osuti seadistamine
Kui (F = 0)
F = 1
Välju
Kustutustoimingute jaoks järjekorras
Protseduuri kustutamine (järjekord, F, R, punkt)
(Kustutage positsioonist 'element', 'F' on esiotsa osuti ja 'R' harvaesinev osuti.
1. samm. Kontrollige, kas järjekord on alavoolu, tähendab, et see on tühi
Kui (R <= 0)
Järjekord on tühi
Välju
2. samm: elemendi kustutamine järjekorrast
Üksus = järjekord (F) 3. samm: F väärtuse suurendamine
F = F + 1
4. samm: tühja järjekorra kontrollimine
Kui (F> R)
Siis F = R = 0
Välju

8.Kinnitage algoritm binaarse puu minimaalse sügavuse leidmiseks.

Vastus: olgu “node” alamharu juursõlme osuti.
1. samm: kui sõlm on võrdne nulliga, tagastage 0
2. samm: kui sõlmeks on lehesõlm, pöörduge tagasi 1.
3. samm: leidke rekursiivselt vasaku ja parema alapuu minimaalne sügavus, laske vasakul vastavalt Min sügavus ja parem min sügavus.
4. samm: sõlme juurdunud puu minimaalse kõrguse saamiseks võtame minimaalselt vasaku min ja parema min sügavuse ning 1 juursõlme jaoks.
Programm:
Protseduur minDepth (sõlm)
1. samm: kui (juur = null)
Tagasi 0
2. samm: kui (juur -> vasak = null ja juur -> parem = null)
Tagasi 1
3. samm: kui (juur -> vasak pole null)
Tagasi minDepth (juur -> parem) + 1;
4. samm: kui (juur -> õigus pole null)
Tagasi minDepth (juur -> vasak) + 1;
5. samm: min tagasi (minDepth (juur -> vasak), minDepth (root -> paremal)) + 1

Soovitatavad artiklid

See on olnud algoritmi intervjuu küsimuste ja vastuste põhjalik juhend, et kandidaat saaks hõlpsalt neid algoritmi intervjuu küsimusi lahendada. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Masinõppega intervjuu küsimused ja vastused
  2. Kasulik juhend Big Data intervjuu küsimuste kohta
  3. Olulised Elasticsearchi intervjuu küsimused
  4. Kasulikud Apache PIG-i intervjuu küsimused ja vastused