top 30 programming coding interview questions answers
En este tutorial, hemos proporcionado las preguntas y respuestas de entrevistas de codificación más comunes con ejemplos de código y lógica de programa para que practique la programación:
Todos somos conscientes de que responder a las preguntas más básicas de codificación o programación de la entrevista determina cómo nos desempeñamos en una entrevista. La entrevista puede ser para Java, C ++ o un requisito de Javascript, pero la base sigue siendo la misma, así de fuertes somos en los fundamentos de la lógica de programación.
Además, si nuestro enfoque es rápido y sutil en una entrevista, la probabilidad de selección es mayor. Así que sigue leyendo para descifrar las preguntas de la entrevista de codificación.
Recuerde estudiar y practicar estas preguntas de programación de entrevistas antes de enfrentarse a una entrevista. Esto no solo aumentará su convicción, sino que también será útil para responderlas rápidamente. Las preguntas cubrirán principalmente temas como matrices, cadenas, listas enlazadas, etc.
¡¡Levántense los calcetines, chicos !!
Preguntas frecuentes de la entrevista sobre programación / codificación básica
Q #1) ¿Cómo se puede invertir una cuerda?
Respuesta: La cadena se invierte con el siguiente algoritmo:
- Iniciado
- Se declara la cadena que se va a invertir.
- Obtén la longitud de la cuerda.
- Inicie un bucle y luego cambie la posición de los elementos de la matriz.
- Mantenga las posiciones intercambiadas.
- Imprime la cadena invertida.
P # 2) ¿Qué es una cuerda palíndromo?
Responder: Después de que la cadena se invierte como se discutió en Q # 1, necesitamos poner la siguiente condición:
Fragmento de código:
|_+_|Así, la cuerda palíndromo es la que al invertir permanece igual, por ejemplo, - 'madam' es una cuerda palíndromo.
P # 3) ¿Cómo obtener los caracteres coincidentes en una cadena?
Respuesta: Para obtener los caracteres coincidentes en una cadena, se siguen los pasos a continuación:
- Se toma la estructura de datos del mapa hash que funciona con el par clave-valor.
- Haga un bucle de las cadenas, carácter por carácter, y verifique si ese carácter de la cadena existe en el mapa hash o no.
- Si el resultado es verdadero, el contador del carácter en el mapa hash aumenta o, de lo contrario, se pone un recuento como 1.
- Una vez que finaliza el ciclo, se recorre el mapa Hash e imprime los caracteres con más de 1 recuento.
Fragmento de código:
|_+_|Q #4) ¿Cómo obtener los caracteres que no coinciden en una cadena?
Responder: Para obtener los caracteres que no coinciden en una cadena, se siguen los pasos a continuación:
- Se toma la estructura de datos del mapa hash que funciona con el par clave-valor.
- Haga un bucle en la cadena, carácter por carácter, y verifique si ese carácter de la cadena existe en el mapa hash o no.
- Si el resultado es verdadero, el contador del carácter en el mapa hash aumenta o, de lo contrario, se pone un recuento como 1.
- Una vez que finaliza el ciclo, se recorre el mapa Hash e imprime los caracteres con un recuento igual a 1.
Fragmento de código:
|_+_|P # 5) ¿Cómo calcular el número de vocales y consonantes en una cadena?
Respuesta: Para calcular el número de vocales y consonantes en una cadena, se siguen los siguientes pasos:
- Obtenga la cadena en la que se debe realizar el conteo.
- Ejecute un bucle desde 0 hasta la longitud de la cadena.
- Tome un solo carácter a la vez y verifique si son parte del grupo de vocales.
- Si el resultado es verdadero, aumente el número de vocales o de lo contrario incremente el número de consonantes.
Fragmento de código:
|_+_|P # 6) ¿Cómo demuestra que las dos cadenas son anagramas?
Responder: Dos cadenas se denominan anagramas si se adaptan a un grupo similar de caracteres en una secuencia variada.
Para comprobar si dos cadenas son anagramas, se siguen los pasos a continuación:
- Inicialice dos cadenas en dos variables.
- Compruebe si la longitud de las dos cadenas es similar, si no, las cadenas no son un anagrama.
- Si el resultado es verdadero, tome las dos cadenas y guárdelas en una matriz de caracteres.
- Ordene las dos matrices de caracteres, luego verifique si las dos matrices ordenadas son iguales.
- Si el resultado es verdadero, las dos cadenas son anagrama más, no anagrama.
Fragmento de código:
|_+_|P # 7) Encuentre el recuento de la aparición de un carácter en particular en una cadena.
Respuesta: Para contar la aparición de un carácter en particular en una cadena, se siguen los pasos a continuación:
- Comience con una cadena y un carácter particular cuya ocurrencia se contará.
- Inicie un bucle desde 0 hasta la longitud de la cuerda.
- Compare si un carácter particular de la cadena es igual al carácter que se está buscando.
- Si el resultado es verdadero, incremente el valor del contador.
Fragmento de código:
|_+_|P # 8) ¿Cómo verificar si dos cuerdas son una rotación mutuamente?
Respuesta: Para verificar si dos cadenas son una rotación mutua, se siguen los pasos a continuación:
- Inicialice las dos cadenas en dos variables.
- Compruebe si la longitud de dos cadenas es similar, si no devuelve falso.
- Une la cuerda consigo misma.
- Verifique si la cuerda que se gira está presente en la cuerda unida.
- Si el resultado es verdadero, la segunda cadena es una rotación de la primera cadena.
Fragmento de código:
|_+_|P # 9) ¿Cómo calcular la cantidad de dígitos numéricos en una cadena?
Respuesta: Para calcular el número de dígitos en una cadena, se siguen los pasos a continuación:
- Obtenga la cadena en la que se debe realizar el conteo
- Utilice la función replaceAll, que reemplaza todos los dígitos numéricos por “”.
- Obtenga la longitud de la cadena sin dígitos.
Fragmento de código:
|_+_|En esta solución, se utiliza una expresión regular.
P # 10) ¿Cómo calcular el primer carácter de una cadena que no se repite?
Respuesta: Para calcular el primer carácter de una cadena que no se repite, se siguen los pasos a continuación:
- Se toma una estructura de datos establecida para los caracteres repetidos y una lista para los caracteres no repetidos.
- Después de segregar lo repetido y lo no repetido, al final de la iteración, el primer elemento de la lista se imprime en la consola.
Fragmento de código:
|_+_|P # 11) ¿Cómo buscar un número que falta en una matriz que contiene números enteros del 1 al 100?
Respuesta: Para buscar un número que falta en una matriz que contiene números enteros del 1 al 100, se siguen los pasos a continuación:
- Tome una matriz de enteros con los números del 1 al 100.
- Calcule la suma de los números, la suma será = l * (l + 1) / 2, donde l es el número de enteros.
- Realice la resta del elemento faltante de la suma total de números.
P # 12) ¿Cómo obtener los elementos coincidentes en una matriz de enteros?
Respuesta: Para obtener los elementos coincidentes en una matriz de enteros, se siguen los pasos a continuación:
- Construye dos bucles.
- En el primer ciclo, recopile los elementos de uno en uno y sume el número de instancias del elemento seleccionado.
Fragmento de código:
|_+_|P # 13) ¿Cómo eliminar los elementos repetidos en una matriz de enteros?
Respuesta: Para eliminar los elementos repetidos en una matriz de números enteros, se siguen los pasos a continuación:
- Cree un mapa de hash que seleccionará todos los elementos que están presentes antes.
- Recorra la matriz y verifique si el elemento ya existe en el mapa hash
- Si el resultado es verdadero, se continúa el recorrido de la matriz; de lo contrario, el elemento se imprime en la consola.
Fragmento de código:
|_+_|P # 14) Determine el elemento más grande y el más pequeño de una matriz que no está ordenada.
Respuesta: Para determinar el elemento más grande y más pequeño de una matriz, se deben seguir los pasos a continuación:
- Atraviese la matriz y controle el elemento máximo encontrado hasta ahora, hasta que estemos en el borde de la matriz, se logra el elemento más grande.
- Atraviese la matriz y controle el elemento mínimo encontrado hasta ahora, hasta que estemos en el borde de la matriz, se logra el elemento más pequeño.
P # 15) Explique el algoritmo de clasificación de burbujas.
Respuesta: El algoritmo de clasificación de burbujas incluye los siguientes pasos:
mejor VPN para kodi gratis
- Comience desde el primer elemento, luego realice una comparación con el siguiente elemento en la matriz
- Si el elemento actual es más grande que el siguiente elemento de la matriz, intercambie sus posiciones.
- Si el elemento actual es menor que el siguiente elemento de la matriz, cambie al siguiente elemento y repita nuevamente el paso 1.
Fragmento de código:
|_+_|P # 16) Implementar el algoritmo de ordenación por inserción.
Responder: Implementación de ordenamiento por inserción.
Fragmento de código:
|_+_|Q # 17) Determine el segundo elemento más grande de una matriz.
Respuesta: El segundo elemento más grande de una matriz se puede calcular mediante los siguientes pasos:
- Indique el elemento más grande como el primer elemento de la matriz y el segundo elemento más grande como el segundo elemento de la matriz.
- Itere a través del bucle para atravesar la matriz.
- SI arry (i) es mayor que el elemento más grande ENTONCES
¿Segundo elemento? elemento más grande
¿El elemento más grande? Arry (i)
SI el segundo elemento es menor que arry (i) ENTONCES
Segundo elemento? Arry (i)
Fragmento de código:
|_+_|P # 18) Explique la inversión de una matriz.
Respuesta: La inversión de matriz se realiza de las siguientes formas:
- Tome una matriz con elementos.
- Ahora intercambie la posición del primer elemento con el elemento final, y de manera similar el segundo elemento con el penúltimo elemento.
- Esto continuará hasta que se invierta toda la matriz.
Fragmento de código:
|_+_|P # 19) ¿Cómo eliminar caracteres especiales en una cadena que está en minúsculas?
Responder: Los caracteres especiales de una cadena se pueden eliminar utilizando la función replaceAll en Java.
Fragmento de código:
|_+_|En esta solución, se utiliza una expresión regular.
P # 20) ¿Cómo realizar el intercambio de dos cadenas sin usar una tercera variable?
Respuesta: Dos cadenas se intercambian sin la ayuda de la tercera variable mediante los siguientes pasos:
(I) Tome dos cadenas i, j, agréguelas y luego guárdelas en la primera cadena.
(ii) Usando el método de subcadena, extraiga la cadena:
|_+_|(iii) Almacene la cadena j en la cadena i
|_+_|Fragmento de código:
|_+_|P # 21) ¿Cómo ir a la mitad de una lista enlazada?
Respuesta: Para ir a la mitad de una lista vinculada, se siguen los pasos a continuación:
- Declare dos punteros primero y segundo que se inicializan en el encabezado de la lista vinculada.
- Incremente la primera lista vinculada en dos nodos y la segunda en un nodo en cada bucle.
- Mientras que el primer nodo llega al final de la lista, el segundo nodo apuntará al medio.
Fragmento de código:
|_+_|P # 22) Implementar el proceso de revertir una lista enlazada.
Respuesta: Una lista vinculada se puede revertir siguiendo los pasos a continuación:
- Declare tres nodos anteriores, presentes y siguientes.
- Mientras esté en el nodo actual, el anterior será nulo.
- Deje que present.next sea anterior para invertir la lista.
- En cada bucle, el presente y el precedente se incrementan en 1.
Fragmento de código:
|_+_|P # 23) ¿Cuál es el proceso de eliminar elementos coincidentes de una lista vinculada que no está ordenada?
Respuesta: Para eliminar elementos coincidentes de una lista vinculada que no está ordenada, se siguen los pasos a continuación:
- Viaja desde el principio hasta el final de la lista vinculada.
- Para cada valor en la lista vinculada, verifique si ya está presente en la tabla hash.
- Si el resultado es verdadero, el elemento no se agrega a la tabla hash.
Fragmento de código:
|_+_|P # 24) ¿Cómo obtener la longitud de una lista enlazada?
Responder: Para obtener la longitud de una lista vinculada, se siguen los pasos a continuación:
- Inicie un contador con un valor de 0 y presente el nodo como cabeza.
- Hasta que el nodo actual no sea nulo, realice lo siguiente:
- presente = presente -> siguiente
- contador = contador + 1
- Se devuelve el valor del contador.
Fragmento de código:
|_+_|P # 25) ¿Cómo buscar un valor específico en una lista vinculada?
Respuesta: Para buscar un valor específico en una lista vinculada, se siguen los pasos a continuación:
- Declare el nodo actual como cabeza.
- Hasta que el nodo actual no sea nulo, realice lo siguiente:
- presente -> valor es igual al valor que se busca devolver verdadero.
- presente = presente -> siguiente.
- Si no se encuentra, se devuelve falso.
Fragmento de código:
|_+_|P # 26) ¿Cómo verificar si un número es primo o no?
Responder: Para verificar si un número es primo o no, se siguen los pasos a continuación:
- Iniciar un ciclo desde el valor 2 (k) hasta (número / 2)
- Si el número es perfectamente divisible por k, entonces el número no es primo.
- Si el número no es perfectamente divisible excepto por 1 y por sí mismo, entonces el número es primo.
Fragmento de código:
|_+_|P # 27) ¿Cómo obtener el tercer nodo de una lista vinculada?
Respuesta: Para llegar al tercer nodo de la lista vinculada, se siguen los pasos a continuación:
- Inicie un contador con un valor 0.
- Repita la lista vinculada y siga estos pasos:
- Si el valor del contador es 3, se devuelve el nodo actual.
- El contador aumenta en 1.
- Modificar el presente de tal manera que implique al próximo del presente.
Fragmento de código:
|_+_|Q # 28) Calcule los primeros cinco números de Fibonacci.
Responder: 0 y 1 son los dos primeros números de Fibonacci y todos los números después del 0 y 1 son la suma de los dos números anteriores.
Fragmento de código:
|_+_|P # 29) ¿Cómo invertir un número?
Respuesta: La inversión de un número se logra en los siguientes pasos:
- Saque el dígito más a la derecha del número.
- Sume el dígito con el nuevo número invertido.
- Realiza la multiplicación por 10.
- Divide el número por 10.
Q # 30) Determina los factores de un número.
Respuesta: Los factores de un número se expresan mediante el siguiente fragmento de código:
|_+_|Conclusión
Esperamos que se hayan aclarado muchas de las respuestas a sus consultas sobre las preguntas básicas de codificación de la entrevista.
La mayor parte de la implementación de codificación que hemos discutido está en Java, sin embargo, incluso si no conoce el idioma, los pasos o los detalles del algoritmo que se dan aquí para la mayoría de las preguntas lo ayudarán a prepararse para una entrevista.
Trabaje duro en sus conceptos básicos de programación, lógica, estructuras de datos, mantenga la calma y practique estas preguntas de la entrevista de programación.
¡¡Todo lo mejor para su próxima entrevista !!
Lectura recomendada
- Preguntas y respuestas de la entrevista
- Preguntas y respuestas de la entrevista de prueba ETL
- Algunas preguntas y respuestas complicadas sobre pruebas manuales
- Las 30 preguntas y respuestas principales de las entrevistas en HTML (LISTA 2021)
- Más de 30 preguntas y respuestas populares de entrevistas sobre pepino
- Las 30 preguntas y respuestas principales de la entrevista SAS
- Las 30 preguntas y respuestas principales de la entrevista sobre DBMS
- Las 30 preguntas y respuestas principales de la entrevista sobre pruebas de seguridad