top 30 programming coding interview questions answers
In deze zelfstudie hebben we de meest voorkomende vragen en antwoorden over coderingsinterviews gegeven met programmeerlogica en codevoorbeelden waarmee u kunt oefenen met programmeren:
We zijn ons er allemaal van bewust dat het beantwoorden van de meest elementaire codeer- of programmeerinterviewvragen bepaalt hoe we presteren in een interview. Het interview kan voor Java, C ++ of een Javascript-vereiste zijn, maar de basis blijft hetzelfde, zo sterk zijn we in de basis van programmeerlogica.
Ook als onze aanpak in een interview snel en subtiel is, is de kans op selectie groter. Dus lees verder voor het kraken van de coderingsinterviewvragen.
Denk eraan om deze programmeerinterviewvragen te bestuderen en te oefenen voordat u naar een interview gaat. Dit zal niet alleen uw overtuiging versterken, maar het zal ook nuttig zijn om ze snel te beantwoorden. De vragen hebben voornamelijk betrekking op onderwerpen als arrays, tekenreeks, gekoppelde lijst, enzovoort.
Trek je sokken omhoog jongens !!
Veelgestelde vragen tijdens sollicitatiegesprekken met basisprogrammering / codering
Q # 1) Hoe kun je een string omdraaien?
Antwoord: String wordt omgekeerd met het volgende algoritme:
- Initiëren
- De string die moet worden omgedraaid, wordt gedeclareerd.
- Verkrijg de lengte van de string.
- Start een lus en wissel vervolgens de positie van de array-elementen om.
- Houd de uitgewisselde posities.
- Print de omgekeerde string.
Q # 2) Wat is een palindroomstreng?
Antwoord: Nadat de string is omgekeerd zoals besproken in Q # 1, we moeten de volgende voorwaarde stellen:
Codefragment:
Dus palindroom string is degene die bij het omkeren hetzelfde blijft, bijvoorbeeld, - ‘mevrouw’ is een palindroomkoord.
V # 3) Hoe krijg ik de overeenkomende karakters in een string?
Antwoord: Om de overeenkomende karakters in een string te krijgen, worden de onderstaande stappen gevolgd:
- Er wordt een Hash Map-datastructuur genomen die werkt met het sleutel / waarde-paar.
- Herhaal de strings, teken voor teken, en controleer of dat teken van de tekenreeks in de hash-map voorkomt of niet.
- Als het resultaat waar is, wordt de teller voor het teken in de hash-map verhoogd of wordt er 1 geteld.
- Zodra de lus eindigt, wordt de hash-kaart doorlopen en worden de tekens met meer dan 1 telling afgedrukt.
Codefragment:
Q # 4) Hoe krijg ik de niet-overeenkomende tekens in een string?
Antwoord: Om de niet-overeenkomende tekens in een string te krijgen, worden de onderstaande stappen gevolgd:
- Er wordt een Hash Map-datastructuur genomen die werkt met het sleutel / waarde-paar.
- Herhaal de tekenreeks, teken voor teken, en controleer of dat teken van de tekenreeks in de hash-map voorkomt of niet.
- Als het resultaat waar is, wordt de teller voor het teken in de hash-map verhoogd of wordt er 1 geteld.
- Zodra de lus eindigt, wordt de hash-kaart doorlopen en worden de tekens afgedrukt met een telling gelijk aan 1.
Codefragment:
Vraag 5) Hoe bereken je het aantal klinkers en medeklinkers in een string?
Antwoord: Om het aantal klinkers en medeklinkers in een string te berekenen, worden de onderstaande stappen gevolgd:
- Haal de string op waarop geteld moet worden.
- Voer een lus uit van 0 tot de lengte van de string.
- Neem één teken tegelijk en controleer of ze deel uitmaken van de groep klinkers.
- Als het resultaat waar is, verhoog dan het aantal klinkers of verhoog het aantal medeklinkers.
Codefragment:
V # 6) Hoe bewijs je dat de twee strings anagrammen zijn?
Antwoord: Twee strings worden anagrammen genoemd als ze een vergelijkbare groep tekens in een gevarieerde volgorde bevatten.
Om te controleren of twee strings anagrammen zijn, worden de onderstaande stappen gevolgd:
- Initialiseer twee strings in twee variabelen.
- Controleer of de lengte van de twee snaren vergelijkbaar is, zo niet, dan zijn de snaren geen anagram.
- Als het resultaat waar is, neem dan de twee strings en sla ze op in een tekenreeks.
- Sorteer de twee tekenarrays en controleer of de twee gesorteerde arrays hetzelfde zijn.
- Als het resultaat waar is, zijn de twee strings anagram anders, niet anagram.
Codefragment:
Q # 7) Zoek het aantal voor het voorkomen van een bepaald teken in een string.
Antwoord: Om het voorkomen van een bepaald teken in een string te tellen, worden de onderstaande stappen gevolgd:
- Begin met een string en een bepaald karakter waarvan het voorkomen zal worden geteld.
- Start een lus van 0 tot de lengte van de string.
- Vergelijk of een bepaald teken van de tekenreeks gelijk is aan het teken dat wordt doorzocht.
- Als het resultaat waar is, verhoog dan de waarde van de teller.
Codefragment:
V # 8) Hoe kan ik controleren of twee snaren onderling een rotatie zijn?
Antwoord: Om te controleren of twee strings onderling een rotatie zijn, worden de onderstaande stappen gevolgd:
- Initialiseer de twee strings in twee variabelen.
- Controleer of de lengte van twee strings vergelijkbaar is, zo niet, retourneer false.
- Verbind de string met zichzelf.
- Controleer of de string die wordt geroteerd aanwezig is in de gekoppelde string.
- Als het resultaat waar is, is de tweede string een rotatie van de eerste string.
Codefragment:
V # 9) Hoe bereken je het aantal numerieke cijfers in een string?
Antwoord: Om het aantal cijfers in een string te berekenen, worden de onderstaande stappen gevolgd:
- Haal de string op waarop geteld moet worden
- Gebruik de functie replaceAll, die alle numerieke cijfers vervangt door ''.
- Verkrijg de lengte van de string zonder cijfers.
Codefragment:
In deze oplossing wordt een reguliere expressie gebruikt.
V # 10) Hoe bereken ik het eerste teken van een string die niet wordt herhaald?
Antwoord: Om het eerste teken van een string te berekenen die niet wordt herhaald, worden de onderstaande stappen gevolgd:
- Er wordt een gegevensstructuur voor de herhaalde tekens en een lijst voor de niet-herhaalde tekens gemaakt.
- Na het scheiden van de herhaalde en niet-herhaalde, aan het einde van de iteratie, wordt het eerste element van de lijst afgedrukt in de console.
Codefragment:
Vraag 11) Hoe zoek je een ontbrekend getal in een array die gehele getallen van 1 tot 100 bevat?
Antwoord: Om een ontbrekend getal te zoeken in een array die gehele getallen van 1 tot 100 bevat, worden de onderstaande stappen gevolgd:
- Neem een array met gehele getallen met de getallen van 1 tot 100.
- Bereken de som van de getallen, de optelling is = l * (l + 1) / 2, waarbij l het aantal gehele getallen is.
- Voer het ontbrekende element af van de totale optelling van getallen.
Vraag 12) Hoe krijg ik de overeenkomende elementen in een array met gehele getallen?
Antwoord: Om de overeenkomende elementen in een array met gehele getallen te krijgen, worden de onderstaande stappen gevolgd:
- Bouw twee lussen.
- Verzamel in de eerste lus elementen één voor één en tel het aantal instanties van het geselecteerde element op.
Codefragment:
Vraag 13) Hoe verwijder ik de herhaalde elementen in een array met gehele getallen?
hoe dat-bestanden op Windows te bekijken
Antwoord: Om de herhaalde elementen in een array met gehele getallen te verwijderen, worden de onderstaande stappen gevolgd:
- Bouw een hashmap die alle elementen kiest die eerder aanwezig waren.
- Loop door de array en controleer of het element al bestaat in de hash-map
- Als het resultaat waar is, wordt de array-traversal voortgezet, anders wordt het element in de console afgedrukt.
Codefragment:
Q # 14) Bepaal het grootste en het kleinste element van een array die niet is gesorteerd.
Antwoord: Om het grootste en het kleinste element van een array te bepalen, moeten de onderstaande stappen worden gevolgd:
- Doorkruis de array en controleer het maximale element dat tot nu toe is gevonden, totdat we aan de rand van de array zijn, het grootste element is bereikt.
- Doorkruis de array en controleer het minimumelement dat tot nu toe is gevonden, totdat we aan de rand van de array zijn, het kleinste element is bereikt.
Vraag 15) Leg het algoritme voor het sorteren van bellen uit.
Antwoord: Het algoritme voor het sorteren van bellen omvat de volgende stappen:
- Begin bij het eerste element en voer vervolgens een vergelijking uit met het volgende element in de array
- Als het huidige element groter is dan het volgende element van de array, verwissel dan hun posities.
- Als het huidige element kleiner is dan het volgende element van de array, ga dan naar het volgende element en herhaal stap 1 opnieuw.
Codefragment:
V # 16) Implementeer het invoegsorteeralgoritme.
Antwoord: Implementatie van invoegsortering.
Codefragment:
Q # 17) Bepaal het op een na grootste element van een array.
hoe u webservices handmatig kunt testen
Antwoord: Het op een na grootste element van een array kan als volgt worden berekend:
- Noem het grootste element als het eerste element van de array en het op een na grootste element als het tweede element van de array.
- Herhaal de lus om de array te doorlopen.
- ALS arry (i) groter is dan het grootste element THEN
Tweede element? grootste element
Grootste element? Arry (i)
ALS tweede element kleiner is dan arry (i) THEN
Tweede element? Arry (i)
Codefragment:
Vraag 18) Verklaar de omkering van een array.
Antwoord: Array-omkering wordt op de volgende manieren uitgevoerd:
- Neem een array met elementen.
- Verwissel nu de positie van het eerste element met het laatste element, en op dezelfde manier het tweede element met het voorlaatste element.
- Dit gaat door totdat de hele array is omgekeerd.
Codefragment:
V # 19) Hoe verwijder ik speciale tekens in een tekenreeks die in kleine letters staat?
Antwoord: Speciale tekens in een string kunnen worden verwijderd door de functie replaceAll in Java te gebruiken.
Codefragment:
In deze oplossing wordt een reguliere expressie gebruikt.
V # 20) Hoe kun je twee strings verwisselen door geen derde variabele te gebruiken?
Antwoord: Twee strings worden verwisseld zonder de hulp van de derde variabele door de volgende stappen:
(ik) Neem twee strings i, j, en voeg ze toe en sla ze op in de eerste string.
(ii) Gebruik de substring-methode om de string te extraheren:
(iii) Bewaar de string j in string i
Codefragment:
V # 21) Hoe ga je naar het midden van een gekoppelde lijst?
Antwoord: Om naar het midden van een gekoppelde lijst te gaan, worden de onderstaande stappen gevolgd:
- Verklaar twee pointers als eerste en tweede die worden geïnitialiseerd naar de gekoppelde lijstkop.
- Verhoog de eerste gekoppelde lijst met twee knooppunten en de tweede met één knooppunt in elke lus.
- Terwijl het eerste knooppunt het einde van de lijst bereikt, wijst het tweede knooppunt naar het midden.
Codefragment:
V # 22) Implementeer het proces van het omkeren van een gekoppelde lijst.
Antwoord: Een gekoppelde lijst kan worden omgekeerd door de onderstaande stappen:
- Declareer drie knooppunten voorafgaand aan, aanwezig en volgend.
- In het huidige knooppunt is het voorgaande null.
- Laat het present.next voorafgaan om de lijst om te draaien.
- In elke lus worden het heden en het voorgaande met 1 verhoogd.
Codefragment:
V # 23) Wat is het proces van het verwijderen van overeenkomende elementen uit een gekoppelde lijst die niet is gesorteerd?
Antwoord: Om overeenkomende elementen te verwijderen uit een gekoppelde lijst die niet is gesorteerd, worden de onderstaande stappen gevolgd:
- Reis van het begin naar het einde van de gekoppelde lijst.
- Controleer voor elke waarde in de gekoppelde lijst of deze al aanwezig is in de hashtabel.
- Als het resultaat waar is, wordt het element niet toegevoegd aan de hashtabel.
Codefragment:
V # 24) Hoe krijg ik de lengte van een gekoppelde lijst?
Antwoord: Om de lengte van een gekoppelde lijst te krijgen, worden de onderstaande stappen gevolgd:
- Start een teller met een waarde van 0 en presenteer het knooppunt als hoofd.
- Voer deze uit tot het huidige knooppunt niet nul is:
- aanwezig = aanwezig -> volgende
- teller = teller + 1
- De tellerwaarde wordt geretourneerd.
Codefragment:
V # 25) Hoe zoek ik een specifieke waarde in een gekoppelde lijst?
Antwoord: Om een specifieke waarde in een gekoppelde lijst te zoeken, worden de onderstaande stappen gevolgd:
- Verklaar het huidige knooppunt als hoofd.
- Voer deze uit tot het huidige knooppunt niet nul is:
- present -> value is gelijk aan de waarde waarnaar wordt gezocht, return true.
- aanwezig = aanwezig -> volgende.
- Indien niet gevonden, wordt false geretourneerd.
Codefragment:
V # 26) Hoe kan ik controleren of een getal een priemgetal is of niet?
Antwoord: Om te controleren of een getal een priemgetal is of niet, worden de onderstaande stappen gevolgd:
- Start een lus van waarde 2 (k) tot (nummer / 2)
- Als het getal perfect deelbaar is door k, is het getal geen priemgetal.
- Als het getal niet perfect deelbaar is behalve 1 en op zichzelf, dan is het getal een priemgetal.
Codefragment:
V # 27) Hoe krijg ik het derde knooppunt van een gekoppelde lijst?
Antwoord: Om bij het derde knooppunt van de gekoppelde lijst te komen, worden de onderstaande stappen gevolgd:
- Start een teller met een waarde 0.
- Herhaal de gekoppelde lijst en voer deze stappen uit:
- Als de waarde van de teller 3 is, wordt het huidige knooppunt geretourneerd.
- Teller wordt verhoogd met 1.
- Wijzig het heden zodanig dat het impliceert naar het volgende van het heden.
Codefragment:
Q # 28) Bereken de eerste vijf Fibonacci-getallen.
Antwoord: 0 en 1 zijn de eerste twee Fibonacci-getallen en alle getallen na 0 en 1 zijn de optelling van de twee voorgaande getallen.
Codefragment:
V # 29) Hoe een nummer omkeren?
Antwoord: Omkering van een nummer gebeurt in de volgende stappen:
- Verwijder het meest rechtse cijfer van het nummer.
- Tel het cijfer op met het nieuwe omgekeerde nummer.
- Voer vermenigvuldiging met 10 uit.
- Deel het getal door 10.
Q # 30) Bepaal de factoren van een getal.
Antwoord: De factoren van een getal worden uitgedrukt door het volgende codefragment:
Gevolgtrekking
We hopen dat veel van de antwoorden op uw vragen over de basisvragen over het coderingsinterview zijn opgehelderd.
De meeste coderingsimplementaties die we hebben besproken, zijn in Java, maar zelfs als u de taal niet kent, zullen de stappen of de details van het algoritme die hier voor de meeste vragen worden gegeven, u helpen bij de voorbereiding op een interview.
Werk hard aan je basisprincipes van programmeren, logica, datastructuren, blijf kalm en oefen deze programmeerinterviewvragen.
Het allerbeste voor je aanstaande interview !!
Aanbevolen literatuur
- Interview vragen en antwoorden
- Vragen en antwoorden over ETL-tests
- Enkele lastige vragen en antwoorden voor handmatig testen
- 30 Topvragen en antwoorden over HTML-sollicitatiegesprekken (LIJST 2021)
- Top 30+ populaire komkommer interviewvragen en antwoorden
- Top 30 SAS interviewvragen en antwoorden
- Top 30 DBMS interviewvragen en antwoorden
- Top 30 interviewvragen en antwoorden over beveiligingstests