top 30 programming coding interview questions answers
In questo tutorial, abbiamo fornito le domande e le risposte dell'intervista di codifica più comuni con esempi di logica e codice del programma per esercitarti nella programmazione:
Siamo tutti consapevoli che rispondere alle domande più elementari di codifica o programmazione dell'intervista determina come ci comportiamo in un'intervista. L'intervista può essere per Java, C ++ o un requisito Javascript, ma la base rimane la stessa, questo è quanto siamo forti nelle basi della logica di programmazione.
Inoltre, se il nostro approccio è rapido e sottile in un'intervista, la probabilità di selezione è maggiore. Quindi continua a leggere per risolvere le domande dell'intervista sul codice.
Ricordati di studiare e fare pratica con queste domande dell'intervista di programmazione prima di affrontare un'intervista. Questo non solo aumenterà la tua convinzione, ma sarà anche utile per rispondere rapidamente. Le domande copriranno principalmente argomenti come array, stringhe, elenchi collegati e così via.
Tirate su i calzini ragazzi !!
Domande frequenti sui colloqui di programmazione / codifica di base
Q # 1) Come puoi invertire una stringa?
Risposta: la stringa viene invertita con il seguente algoritmo:
- Iniziato
- Viene dichiarata la stringa da invertire.
- Ottieni la lunghezza della stringa.
- Inizia un ciclo e quindi scambia la posizione degli elementi dell'array.
- Mantieni le posizioni scambiate.
- Stampa la stringa invertita.
Q # 2) Cos'è una corda palindromo?
Risposta: Dopo che la stringa è stata invertita come discusso in Q # 1, dobbiamo porre la seguente condizione:
Snippet di codice:
if(actualtxt.equals(reversetxt)){ return “Palindrome”; else return “Not Palindrome”; }
Quindi la corda palindromo è quella che al rovescio rimane la stessa, per esempio, - 'signora' è una corda palindromo.
Q # 3) Come ottenere i caratteri corrispondenti in una stringa?
Risposta: per ottenere i caratteri corrispondenti in una stringa, vengono seguiti i passaggi seguenti:
- Viene utilizzata la struttura dati Hash Map che funziona con la coppia chiave-valore.
- Ripeti le stringhe, carattere per carattere, e verifica se quel carattere della stringa esiste o meno nella mappa hash.
- Se il risultato è vero, il contatore per il personaggio nella mappa hash viene aumentato o altrimenti si conta come 1.
- Una volta che il ciclo finisce, la mappa hash viene attraversata e stampa i caratteri con più di 1 conteggio.
Snippet di codice:
HashMap mp = new HashMap (); for (int j = 0; j1){ System.out.println(ch+ ' - ' + c); } }
Q # 4) Come ottenere i caratteri non corrispondenti in una stringa?
Risposta: Per ottenere i caratteri non corrispondenti in una stringa, vengono seguiti i passaggi seguenti:
- Viene utilizzata la struttura dati Hash Map che funziona con la coppia chiave-valore.
- Ripeti la stringa, carattere per carattere, e verifica se quel carattere della stringa esiste o meno nella mappa hash.
- Se il risultato è vero, il contatore per il personaggio nella mappa hash viene aumentato o altrimenti si conta come 1.
- Una volta terminato il ciclo, viene attraversata la mappa hash e vengono stampati i caratteri con un conteggio uguale a 1.
Snippet di codice:
HashMap mp = new HashMap (); for (int j = 0; j Q # 5) Come calcolare il numero di vocali e consonanti in una stringa?
Risposta: per calcolare il numero di vocali e consonanti in una stringa, vengono seguiti i passaggi seguenti:
- Ottieni la stringa su cui deve essere eseguito il conteggio.
- Esegui un ciclo da 0 alla lunghezza della stringa.
- Prendi un singolo carattere alla volta e verifica se fanno parte del gruppo di vocali.
- Se il risultato è vero, aumenta il conteggio delle vocali oppure aumenta il conteggio delle consonanti.
Snippet di codice:
for (int k = 0; k D # 6) Come provi che le due stringhe sono anagrammi?
Risposta: Due stringhe sono chiamate anagrammi se ospitano un gruppo simile di caratteri in una sequenza varia.
Per verificare se due stringhe sono anagrammi, vengono seguiti i passaggi seguenti:
- Inizializza due stringhe in due variabili.
- Controlla se la lunghezza delle due stringhe è simile, in caso contrario le stringhe non sono un anagramma.
- Se il risultato è vero, prendi le due stringhe e memorizzale in un array di caratteri.
- Ordina i due array di caratteri, quindi controlla se i due array ordinati sono uguali.
- Se il risultato è vero, le due stringhe sono altro anagramma, non anagramma.
Snippet di codice:
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'); } }
D # 7) Trova il conteggio dell'occorrenza di un particolare carattere in una stringa.
Risposta: per contare l'occorrenza di un particolare carattere in una stringa, vengono seguiti i passaggi seguenti:
- Inizia con una stringa e un carattere particolare la cui occorrenza deve essere contata.
- Inizia un ciclo da 0 alla lunghezza della stringa.
- Confronta se un particolare carattere della stringa è uguale al carattere che si sta cercando.
- Se il risultato è vero, incrementa il valore del contatore.
Snippet di codice:
for (int l=0; l Q # 8) Come verificare se due stringhe ruotano reciprocamente?
Risposta: per verificare se due stringhe ruotano reciprocamente, vengono seguiti i passaggi seguenti:
- Inizializza le due stringhe in due variabili.
- Controlla se la lunghezza di due stringhe è simile, altrimenti restituisce false.
- Unisci la stringa a se stessa.
- Verificare se la stringa che viene ruotata è presente nella stringa unita.
- Se il risultato è vero, la seconda stringa è una rotazione della prima stringa.
Snippet di codice:
String concat = org_string + org_string; if (concat.indexOf (rotat) ! = -1) { return true; }
Q # 9) Come calcolare il numero di cifre numeriche in una stringa?
Risposta: per calcolare il numero di cifre in una stringa, vengono seguiti i passaggi seguenti:
- Ottieni la stringa su cui deve essere eseguito il conteggio
- Utilizzare la funzione replaceAll, che sostituisce tutte le cifre numeriche con ''.
- Ottieni la lunghezza della stringa senza cifre.
Snippet di codice:
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); } }
In questa soluzione, viene utilizzata un'espressione regolare.
Q # 10) Come calcolare il primo carattere di una stringa che non viene ripetuta?
Risposta: per calcolare il primo carattere di una stringa che non viene ripetuta, vengono seguiti i passaggi seguenti:
- Viene presa una struttura di dati di impostazione per i caratteri ripetuti e un elenco per i caratteri non ripetuti.
- Dopo aver separato il ripetuto e il non ripetuto, alla fine dell'iterazione, il primo elemento della lista viene stampato nella console.
Snippet di codice:
Set repeated = new HashSet(); List nonRepeated = new ArrayList(); for (int m = 0; m Q # 11) Come cercare un numero mancante in un array che contiene numeri interi da 1 a 100?
Risposta: per cercare un numero mancante in un array che contiene numeri interi da 1 a 100, vengono seguiti i passaggi seguenti:
- Prendi un array intero con i numeri da 1 a 100.
- Calcola la somma dei numeri, la somma sarà = l * (l + 1) / 2, dove l è il numero di numeri interi.
- Eseguire la sottrazione dell'elemento mancante dalla somma totale di numeri.
D # 12) Come ottenere gli elementi corrispondenti in un array intero?
Risposta: per ottenere gli elementi corrispondenti in un array di numeri interi, vengono seguiti i passaggi seguenti:
- Costruisci due anelli.
- Nel primo ciclo, raccogli gli elementi uno alla volta e somma il numero di istanze dell'elemento selezionato.
Snippet di codice:
for (m = 0; m Q # 13) Come eliminare gli elementi ripetuti in un array intero?
Risposta: per eliminare gli elementi ripetuti in un array di numeri interi, vengono seguiti i passaggi seguenti:
miglior blocco degli annunci pop-up per Chrome
- Costruisci una hashmap che selezionerà tutti gli elementi che sono presenti prima.
- Esegui il ciclo dell'array e verifica se l'elemento esiste già nella mappa hash
- Se il risultato è vero, l'attraversamento dell'array viene continuato, altrimenti l'elemento viene stampato nella console.
Snippet di codice:
HashMap m = new HashMap(); for (int j = 0; j D # 14) Determina l'elemento più grande e più piccolo di un array che non è ordinato.
Risposta: Per determinare l'elemento più grande e più piccolo di un array, è necessario seguire i passaggi seguenti:
- Attraversa l'array e monitora l'elemento massimo trovato finora, finché non siamo al confine dell'array, viene raggiunto l'elemento più grande.
- Attraversa l'array e monitora l'elemento minimo trovato finora, finché non siamo al confine dell'array, l'elemento più piccolo è ottenuto.
D # 15) Spiega l'algoritmo di bubble sort.
Risposta: l'algoritmo di ordinamento delle bolle include i seguenti passaggi:
- Inizia dal primo elemento, quindi effettua un confronto con il seguente elemento dell'array
- Se l'elemento presente è più grande del seguente elemento dell'array, scambia le loro posizioni.
- Se l'elemento presente è minore del seguente elemento della matrice, passare all'elemento successivo e ripetere nuovamente il passaggio 1.
Snippet di codice:
for(k = 0; k D # 16) Implementa l'algoritmo di ordinamento per inserzione.
Risposta: Implementazione di insertion sort.
Snippet di codice:
for (m = 1; m 0 && arry(n - 1) > arry(n)) { k = arry(n); arry(n) = arry(n - 1); arry(n - 1) = k; n--; } }
D # 17) Determina il secondo elemento più grande di un array.
Risposta: Il secondo elemento più grande di un array può essere calcolato con i seguenti passaggi:
- Indicare l'elemento più grande come primo elemento dell'array e il secondo elemento più grande come secondo elemento dell'array.
- Scorri il ciclo per attraversare l'array.
- IF arry (i) è maggiore dell'elemento più grande THEN
Secondo elemento? elemento più grande
Elemento più grande? Arry (i)
SE il secondo elemento è minore di arry (i) THEN
Secondo elemento? Arry (i)
Snippet di codice:
if(arry(0) > arry(1)) { l = arry(0); s = arry(1); } else { l = arry(1); s = arry(0); } for(i = 2; i D # 18) Spiega l'inversione di un array.
Risposta: l'inversione di array viene eseguita nei seguenti modi:
- Prendi un array con elementi.
- Ora scambia la posizione del primo elemento con l'elemento finale, e allo stesso modo il secondo elemento con il penultimo elemento.
- Ciò continuerà fino a quando l'intero array non verrà invertito.
Snippet di codice:
for (t = 0; t Q # 19) Come rimuovere i caratteri speciali in una stringa che è in minuscolo?
Risposta: I caratteri speciali in una stringa possono essere rimossi utilizzando la funzione replaceAll in Java.
Snippet di codice:
string str = “Testing@” str.replaceAll(“(^a-z0-9)”,””)
In questa soluzione, viene utilizzata un'espressione regolare.
D # 20) Come eseguire lo scambio di due stringhe senza utilizzare una terza variabile?
Risposta: due stringhe vengono scambiate senza l'aiuto della terza variabile tramite i seguenti passaggi:
(io) Prendi due stringhe i, j e aggiungile, quindi memorizzale nella prima stringa.
(ii) Utilizzando il metodo della sottostringa estrarre la stringa:
j = substring(0,i.length()-j.length())
(iii) Memorizza la stringa j nella stringa i
i= subsrtirng(j.length)
Snippet di codice:
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);
D # 21) Come passare al centro di una lista collegata?
Risposta: per passare al centro di un elenco collegato, vengono seguiti i passaggi seguenti:
- Dichiarare due puntatori primo e secondo inizializzati all'intestazione della lista collegata.
- Incrementa il primo elenco collegato di due nodi e il secondo di un nodo in ogni ciclo.
- Mentre il primo nodo raggiunge la fine dell'elenco, il secondo nodo punterà al centro.
Snippet di codice:
first = second = head; while(first !=null) { first = first.next; if(first != null && first.next != null) { second = second.next; first = first.next; } } return second; }
D # 22) Implementa il processo di inversione di una lista collegata.
Risposta: un elenco collegato può essere invertito con i passaggi seguenti:
- Dichiara tre nodi precedenti, presenti e seguenti.
- Mentre nel nodo presente, il precedente sarà nullo.
- Lascia che il present.next sia precedente per invertire l'elenco.
- In ogni ciclo, presente e precedente vengono incrementati di 1.
Snippet di codice:
Node preceding=null; Node following while(present!=null) { following=present.next; present.next=preceding; preceding=present; present=following; } return preceding; }
D # 23) Qual è il processo di eliminazione degli elementi corrispondenti da un elenco collegato non ordinato.
Risposta: per eliminare gli elementi corrispondenti da un elenco collegato non ordinato, vengono seguiti i passaggi seguenti:
- Viaggia dalla testa alla coda dell'elenco collegato.
- Per ogni valore nell'elenco collegato, verifica se è già presente nella tabella hash.
- Se il risultato è vero, l'elemento non viene aggiunto alla tabella hash.
Snippet di codice:
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; } }
D # 24) Come ottenere la lunghezza di un elenco collegato?
Risposta: Per ottenere la lunghezza di un elenco collegato, vengono seguiti i passaggi seguenti:
- Avvia un contatore con un valore di 0 e presenta il nodo come head.
- Finché il nodo attuale non è nullo, eseguire queste operazioni:
- presente = presente -> successivo
- contatore = contatore + 1
- Viene restituito il valore del contatore.
Snippet di codice:
{ Node present = head; int c = 0; while (present != null) { c = c + 1; present = present.next; } return c; }
Q # 25) Come cercare un valore specifico in un elenco collegato?
Risposta: per cercare un valore specifico in un elenco collegato, vengono seguiti i passaggi seguenti:
- Dichiara nodo presente come head.
- Finché il nodo attuale non è nullo, eseguire queste operazioni:
- present -> value è uguale al valore cercato return true.
- presente = presente -> successivo.
- Se non viene trovato, viene restituito false.
Snippet di codice:
Node present = head; while (present != null) { if (present.value == value) return true; present = present.next; } return false; }
Q # 26) Come verificare se un numero è primo o no?
Risposta: Per verificare se un numero è primo o meno, vengono seguiti i passaggi seguenti:
- Inizia un ciclo dal valore 2 (k) fino a (numero / 2)
- Se il numero è perfettamente divisibile per k, allora il numero non è primo.
- Se il numero non è perfettamente divisibile tranne che per 1 e da solo, il numero è primo.
Snippet di codice:
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');
D # 27) Come ottenere il terzo nodo di una lista collegata?
Risposta: per arrivare al terzo nodo dell'elenco collegato, vengono seguiti i passaggi seguenti:
- Avvia un contatore con un valore 0.
- Scorri l'elenco collegato ed esegui questi passaggi:
- Se il valore del contatore è 3, viene restituito il nodo attuale.
- Il contatore è aumentato di 1.
- Modifica il presente in modo che implichi il prossimo del presente.
Snippet di codice:
Node present = head; int c = 0; while (c != null) { if (c == 3) return present.val; c = c+1; present = present.next; }
D # 28) Calcola i primi cinque numeri di Fibonacci.
Risposta: 0 e 1 sono i primi due numeri di Fibonacci e tutti i numeri dopo 0 e 1 sono la somma dei due numeri precedenti.
Snippet di codice:
int num1=0, num2=1,t; for ( int k = 0; k<5,k++) { System.out.println(num1); t = num1 + num2; num1 = num2; num2 = t; }
Q # 29) Come invertire un numero?
Risposta: l'inversione di un numero si ottiene nei seguenti passaggi:
- Elimina la cifra più a destra del numero.
- Somma la cifra con il nuovo numero invertito.
- Esegui la moltiplicazione per 10.
- Dividi il numero per 10.
Q # 30) Determina i fattori di un numero.
Risposta: i fattori di un numero sono espressi dal seguente snippet di codice:
int no = 75; for(int j = 1; j <= no; j++) { if (no % j == 0) { System.out.print(j); }
Conclusione
Ci auguriamo che molte delle risposte alle vostre domande sulle domande di base dell'intervista sulla codifica siano state chiarite.
La maggior parte dell'implementazione del codice di cui abbiamo discusso è in Java, tuttavia, anche se non sei a conoscenza del linguaggio, i passaggi oi dettagli dell'algoritmo forniti qui per la maggior parte delle domande ti aiuteranno a prepararti per un colloquio.
unisci codice di ordinamento c ++
Lavora sodo sulle tue basi di programmazione, logica, strutture dati, mantieni la calma e pratica queste domande dell'intervista di programmazione.
Tutto il meglio per la tua prossima intervista !!
Lettura consigliata
- Domande e risposte dell'intervista
- ETL Testing Interview Domande e risposte
- Alcune domande e risposte sui test manuali complicati
- 30 principali domande e risposte per i colloqui HTML (2021 LIST)
- Top 30+ domande e risposte popolari per l'intervista al cetriolo
- Le 30 principali domande e risposte dell'intervista SAS
- Top 30 domande e risposte per l'intervista DBMS
- Top 30 domande e risposte al colloquio sui test di sicurezza