top 30 programming coding interview questions answers
I denne opplæringen har vi gitt de vanligste kodingsintervjuspørsmålene og svarene med programlogikk og kodeeksempler for å øve deg på programmering:
Vi er alle klar over at svaret på de mest grunnleggende spørsmålene om koding eller programmering av intervjuer avgjør hvordan vi presterer i et intervju. Intervjuet kan være for Java, C ++ eller et Javascript-krav, men grunnlaget forblir det samme, det er hvor sterk vi er i grunnlaget for programmeringslogikk.
Også hvis vår tilnærming er rask og subtil i et intervju, er sannsynligheten for valg høyere. Så les videre for å knekke spørsmålene om kodingsintervjuet.
Husk å studere og øve deg på disse spørsmålene om programmeringsintervju før du møter et intervju. Dette vil ikke bare øke din overbevisning, men det vil også være nyttig å svare på dem raskt. Spørsmålene vil hovedsakelig dekke emner som matriser, streng, koblet liste og så videre.
Trekk opp sokkene dine !!
Ofte stilte spørsmål om grunnleggende programmering / koding
Q # 1) Hvordan kan du snu en streng?
Svar: Streng reverseres med følgende algoritme:
- Sette i gang
- Strengen som skal reverseres erklæres.
- Få lengden på strengen.
- Start en sløyfe og bytt deretter plasseringen til matriseelementene.
- Behold de utvekslede posisjonene.
- Skriv ut den omvendte strengen.
Q # 2) Hva er en palindrom streng?
Svar: Etter at strengen er omvendt som diskutert i Q # 1, vi må sette følgende betingelser:
Kodebit:
if(actualtxt.equals(reversetxt)){ return “Palindrome”; else return “Not Palindrome”; }
Dermed er palindromstrengen den som ved reversering forblir den samme, for eksempel, - ‘madam’ er en palindrom streng.
hvordan åpne en bin-fil
Spørsmål nr. 3) Hvordan få de matchende tegnene i en streng?
Svar: For å få samsvarende tegn i en streng følges trinnene nedenfor:
- Hash Map-datastruktur blir tatt som fungerer med nøkkelverdiparet.
- Sløyf strengene, tegn for tegn, og kontroller om det tegnet i strengen finnes i hash-kartet eller ikke.
- Hvis resultatet er sant, økes telleren for tegnet i hash-kartet, ellers setter du tellingen som 1.
- Når løkken ender, krysses Hash-kartet og skriver ut tegnene med mer enn 1 teller.
Kodebit:
HashMap mp = new HashMap (); for (int j = 0; j1){ System.out.println(ch+ ' - ' + c); } }
Q # 4) Hvordan får du tegnene som ikke samsvarer i en streng?
Svar: For å få tegnene som ikke samsvarer i en streng, følges trinnene nedenfor:
- Hash Map-datastruktur blir tatt som fungerer med nøkkelverdiparet.
- Sløyf strengen, tegn for tegn, og kontroller om det tegnet av strengen finnes i hash-kartet eller ikke.
- Hvis resultatet er sant, økes telleren for tegnet i hash-kartet, ellers setter du tellingen som 1.
- Når sløyfen slutter, krysses Hash-kartet og skriver ut tegnene med et antall lik 1.
Kodebit:
HashMap mp = new HashMap (); for (int j = 0; j Sp # 5) Hvordan beregner jeg antall vokaler og konsonanter i en streng?
Svar: For å beregne antall vokaler og konsonanter i en streng følges trinnene nedenfor:
- Få strengen som tellingen må utføres på.
- Kjør en løkke fra 0 til lengden på strengen.
- Ta en enkelt karakter om gangen og kontroller om de er en del av gruppen vokaler.
- Hvis resultatet er sant, kan du øke antallet vokaler eller ellers øke antallet konsonanter.
Kodebit:
for (int k = 0; k Sp # 6) Hvordan viser du at de to strengene er anagrammer?
Svar: To strenger kalles anagrammer hvis de har plass til en lignende gruppe tegn i en variert sekvens.
For å sjekke om to strenger er anagrammer, følges trinnene nedenfor:
- Initialiser to strenger i to variabler.
- Sjekk om lengden på de to strengene er lik, hvis ikke, er ikke strengene et anagram.
- Hvis resultatet er sant, tar du de to strengene og lagrer dem i et tegnsett.
- Sorter de to tegnsettene, og sjekk deretter om de to sorterte matriser er like.
- Hvis resultatet er sant, er de to strengene anagram annet, ikke anagram.
Kodebit:
if (str1.length() != str2.length()) { System.out.println(str1 + ' and ' +str2 + ' not anagrams string'); }else{ char() anagram1 = str1.toCharArray(); char() anagram2 = str2.toCharArray(); Arrays.sort(anagram1); Arrays.sort(anagram2); anagrmstat = Arrays.equals(anagram1, anagram2); } if (anagrmstat == true) { System.out.println(str1 + ' and ' +str2 + ' anagrams string'); }else{ System.out.println(str1 + ' and ' +str2 + ' not anagrams string'); } }
Q # 7) Finn tellingen for forekomsten av et bestemt tegn i en streng.
Svar: For å telle forekomsten av et bestemt tegn i en streng følges trinnene nedenfor:
- Start med en streng og et bestemt tegn hvis forekomst skal telles.
- Start en løkke fra 0 til lengden på strengen.
- Sammenlign hvis et bestemt tegn i strengen tilsvarer tegnet det søkes etter.
- Hvis resultatet er sant, øk verdien på telleren.
Kodebit:
for (int l=0; l Q # 8) Hvordan verifisere om to strenger er en rotasjon gjensidig?
Svar: For å bekrefte om to strenger er en rotasjon gjensidig, følges trinnene nedenfor:
- Initialiser de to strengene i to variabler.
- Sjekk om lengden på to strenger er lik, hvis ikke returner falsk.
- Bli med i strengen for seg selv.
- Kontroller om strengen som roteres er tilstede i den sammenføyde strengen.
- Hvis resultatet er sant, er den andre strengen en rotasjon av den første strengen.
Kodebit:
String concat = org_string + org_string; if (concat.indexOf (rotat) ! = -1) { return true; }
Q # 9) Hvordan beregner jeg antall numeriske sifre i en streng?
Svar: For å beregne antall sifre i en streng følges trinnene nedenfor:
- Få strengen som tellingen må utføres på
- Bruk erstatningsfunksjonen, som erstatter alle tallene med “”.
- Få lengden på strengen uten sifre.
Kodebit:
package introduction; public class GG { public static void main(String() args) { // TODO Auto-generated method stub String str = 'TESTu45'; str=str.replaceAll('\d', ''); int l = str.length(); System.out.println('The length of the string without digit is:' + l); } }
I denne løsningen brukes et vanlig uttrykk.
Sp # 10) Hvordan beregner jeg det første tegnet i en streng som ikke gjentas?
Svar: For å beregne det første tegnet i en streng som ikke gjentas, følges trinnene nedenfor:
- En angitt datastruktur for de gjentatte tegnene og en liste for det ikke-gjentatte tegnet er tatt.
- Etter å ha adskilt gjentatt og ikke-gjentatt, på slutten av iterasjonen, blir det første elementet på listen skrevet ut i konsollen.
Kodebit:
Set repeated = new HashSet(); List nonRepeated = new ArrayList(); for (int m = 0; m Sp # 11) Hvordan søker jeg etter et manglende tall i en matrise som inneholder heltall fra 1 til 100?
Svar: For å søke etter et manglende tall i en matrise som inneholder heltall fra 1 til 100, følges trinnene nedenfor:
- Ta et heltall matrise med tallene fra 1 til 100.
- Beregn summen av tallene, summeringen skal være = l * (l + 1) / 2, hvor l er antall heltall.
- Utfør subtraksjon av det manglende elementet fra det totale tillegget av tall.
Q # 12) Hvordan får du samsvarende elementer i et heltall array?
Svar: For å få de samsvarende elementene i et heltall array følges trinnene nedenfor:
- Bygg to løkker.
- I den første sløyfen samler du elementene en om gangen og legger til antall forekomster av det valgte elementet.
Kodebit:
for (m = 0; m Q # 13) Hvordan sletter du de gjentatte elementene i et heltall array?
Svar: For å slette de gjentatte elementene i et heltall array følges trinnene nedenfor:
anime tv helt gratis for deg
- Bygg en hashmap som vil plukke alle elementene som er tilstede før.
- Bla gjennom matrisen og kontroller om elementet allerede finnes i hash-kartet
- Hvis resultatet er sant, fortsetter array-traversal, ellers blir elementet skrevet ut i konsollen.
Kodebit:
HashMap m = new HashMap(); for (int j = 0; j Q # 14) Bestem det største og minste elementet i en matrise som ikke er sortert.
Svar: For å bestemme det største og minste elementet i en matrise må trinnene nedenfor følges:
- Gjennomgå matrisen, og overvåke det maksimale elementet som er funnet hittil, til vi er ved grensen til matrisen, det største elementet oppnås.
- Gjennomgå matrisen, og overvåke minimumselementet som er funnet hittil, til vi er ved grensen til matrisen, oppnås det minste elementet.
Q # 15) Forklar boblesorteringsalgoritmen.
Svar: Boblesorteringsalgoritmen inkluderer følgende trinn:
- Begynn fra det første elementet, og utfør deretter en sammenligning med følgende element i matrisen
- Hvis det nåværende elementet er større enn det følgende elementet i matrisen, bytter du plasseringene.
- Hvis det nåværende elementet er mindre enn det følgende elementet i matrisen, bytter du til neste element og gjentar igjen trinn 1.
Kodebit:
for(k = 0; k Q # 16) Implementer sorteringsalgoritmen.
Svar: Implementering av innsettingssort.
Kodebit:
for (m = 1; m 0 && arry(n - 1) > arry(n)) { k = arry(n); arry(n) = arry(n - 1); arry(n - 1) = k; n--; } }
Q # 17) Bestem det nest største elementet i en matrise.
Svar: Det nest største elementet i en matrise kan beregnes med følgende trinn:
- Angi det største elementet som det første elementet i matrisen og det nest største elementet som det andre elementet i matrisen.
- Iterer gjennom løkken for å krysse matrisen.
- HVIS arry (i) er større enn det største elementet SÅ
Andre element? største elementet
Største element? Arry (i)
HVIS det andre elementet er mindre enn arry (i) SÅ
Andre element? Arry (i)
Kodebit:
if(arry(0) > arry(1)) { l = arry(0); s = arry(1); } else { l = arry(1); s = arry(0); } for(i = 2; i Q # 18) Forklar reverseringen av en matrise.
Svar: Array reversering utføres på følgende måter:
- Ta en matrise med elementer.
- Bytt nå posisjonen til det første elementet med det endelige elementet, og tilsvarende det andre elementet med det nest siste elementet.
- Dette vil fortsette til hele matrisen er omvendt.
Kodebit:
for (t = 0; t Spørsmål 19) Hvordan fjerne spesialtegn i en streng som er med små bokstaver?
Svar: Spesialtegn i en streng kan fjernes ved å bruke funksjonen erstatte alle i Java.
Kodebit:
string str = “Testing@” str.replaceAll(“(^a-z0-9)”,””)
I denne løsningen brukes et vanlig uttrykk.
Spørsmål nr. 20) Hvordan utføre bytte av to strenger ved ikke å bruke en tredje variabel?
Svar: To strenger byttes ut uten hjelp av den tredje variabelen med følgende trinn:
(Jeg) Ta to strenger i, j, og legg dem til og lagre i den første strengen.
(ii) Ved å bruke substringsmetoden trekker du ut strengen:
j = substring(0,i.length()-j.length())
(iii) Oppbevar streng j i streng i
i= subsrtirng(j.length)
Kodebit:
string i = “abc”, j =”def”; i = i+j; j = i. substring(0,i.length()-j.length()); i = i.substring(j.length()) System.out.println(i +””+j);
Spørsmål nr. 21) Hvordan krysse til midten av en koblet liste?
Svar: For å krysse til midten av en koblet liste følges trinnene nedenfor:
- Erklær to pekere første og andre som er initialisert til det koblede listehodet.
- Øk den første koblede listen med to noder og andre med en node i hver sløyfe.
- Mens den første noden når slutten av listen, vil den andre noden peke mot midten.
Kodebit:
first = second = head; while(first !=null) { first = first.next; if(first != null && first.next != null) { second = second.next; first = first.next; } } return second; }
Q # 22) Implementer prosessen med å reversere en koblet liste.
Svar: En koblet liste kan reverseres ved å følge trinnene nedenfor:
- Erklære tre noder som er foregående, nåværende og følgende.
- Mens du er i den nåværende noden, vil den foregående være null.
- La nåværende. Neste være for å reversere listen.
- I hver sløyfe økes nåværende og foregående med 1.
Kodebit:
Node preceding=null; Node following while(present!=null) { following=present.next; present.next=preceding; preceding=present; present=following; } return preceding; }
Q # 23) Hva er prosessen med å slette samsvarende elementer fra en koblet liste som ikke er sortert.
Svar: For å slette samsvarende elementer fra en koblet liste som ikke er sortert, følges trinnene nedenfor:
beste gratis stemmeveksler for uenighet
- Reis fra hodet til halen på den koblede listen.
- For hver verdi i den koblede listen, må du kontrollere om den allerede finnes i hash-tabellen.
- Hvis resultatet er sant, blir ikke elementet lagt til hashtabellen.
Kodebit:
HashSet h = new HashSet(); node present = head; node preceding = null; while (present != null) { int presentval = present.value; if (h.contains(presentval)) { preceding.next = present.next; } else { h.add(presentval); preceding = present; } present = present.next; } }
Sp # 24) Hvordan får jeg lengden på en koblet liste?
Svar: For å få lengden på en koblet liste følges trinnene nedenfor:
- Start en teller med verdien 0 og presenter node som hode.
- Inntil den nåværende noden ikke er null, utfør disse:
- present = present -> neste
- teller = teller + 1
- Motverdi returneres.
Kodebit:
{ Node present = head; int c = 0; while (present != null) { c = c + 1; present = present.next; } return c; }
Sp # 25) Hvordan søker jeg etter en bestemt verdi i en lenket liste?
Svar: For å søke etter en bestemt verdi i en koblet liste, følg trinnene nedenfor:
- Erklær nåværende node som hode.
- Inntil den nåværende noden ikke er null, utfør disse:
- nåværende -> verdi er lik verdien som blir sett etter retur sann.
- present = present -> neste.
- Hvis ikke funnet, returneres falsk.
Kodebit:
Node present = head; while (present != null) { if (present.value == value) return true; present = present.next; } return false; }
Sp # 26) Hvordan verifisere om et tall er primtall eller ikke?
Svar: For å bekrefte om et tall er primtall eller ikke, følges trinnene nedenfor:
- Start en sløyfe fra verdi 2 (k) opp til (nummer / 2)
- Hvis tallet er helt delelig med k, er tallet ikke primtall.
- Hvis tallet ikke er helt delbart bortsett fra 1 og av seg selv, så er tallet primtall.
Kodebit:
for(k = 2; k <= number / 2; k++) { if(number % k == 0) { stat = false; break; } } if (stat) System.out.println('Prime'; else System.out.println('Not prime');
Spørsmål nr. 27) Hvordan får jeg den tredje noden til en koblet liste?
Svar: For å komme til den tredje noden i den koblede listen følges trinnene nedenfor:
- Start en teller med verdien 0.
- Iterer gjennom den koblede listen og utfør disse trinnene:
- Hvis verdien på telleren er 3, returneres den nåværende noden.
- Telleren økes med 1.
- Endre nåtiden slik at den innebærer til den neste av nåtiden.
Kodebit:
Node present = head; int c = 0; while (c != null) { if (c == 3) return present.val; c = c+1; present = present.next; }
Q # 28) Beregn de fem første Fibonacci-tallene.
Svar: 0 og 1 er de to første Fibonacci-tallene, og alle tallene etter 0 og 1 er tillegg av de to forrige tallene.
Kodebit:
int num1=0, num2=1,t; for ( int k = 0; k<5,k++) { System.out.println(num1); t = num1 + num2; num1 = num2; num2 = t; }
Spørsmål nr. 29) Hvordan snu et tall?
Svar: Tilbakeføring av et tall oppnås i følgende trinn:
- Ta ut tallet til høyre.
- Oppsummer sifferet med det nye omvendte tallet.
- Utfør multiplikasjon med 10.
- Del tallet med 10.
Q # 30) Bestem faktorene til et tall.
Svar: Faktorene til et tall uttrykkes med følgende kodebit:
int no = 75; for(int j = 1; j <= no; j++) { if (no % j == 0) { System.out.print(j); }
Konklusjon
Vi er håpefulle at mange av svarene på spørsmålene dine om de grunnleggende kodingsintervjuspørsmålene er avklart.
Det meste av kodingsimplementeringen som vi har diskutert, er i Java, selv om du ikke er klar over språket, vil trinnene eller detaljene i algoritmen som er gitt her for de fleste spørsmålene hjelpe deg med å forberede deg på et intervju.
Arbeid hardt med det grunnleggende om programmering, logikk, datastrukturer, vær rolig og øv på disse spørsmålene om programmeringsintervju.
Alt det beste for ditt kommende intervju !!
Anbefalt lesing
- Intervju Spørsmål og svar
- ETL Testing Intervju Spørsmål og svar
- Noen vanskelige manuelle testspørsmål og svar
- 30 topp HTML intervju spørsmål og svar (2021 LISTE)
- Topp 30+ populære agurkintervju spørsmål og svar
- Topp 30 SAS intervju spørsmål og svar
- Topp 30 DBMS intervju spørsmål og svar
- Topp 30 sikkerhetstestintervju og spørsmål