Estoy buscando ejemplos de problemas de pseudocódigos que se le pueden haber preguntado en una entrevista o se le ha pedido que represente como parte de su trabajo o educación. No busco ejemplos de ningún dominio en particular, por lo que puede estar relacionado con patrones de diseño, algoritmos, estructuras de datos, estrategias de almacenamiento en caché, todo lo relacionado con la Ingeniería de Software y Desarrollo, simple o complejo.Preguntas comunes de pseudocódigo, acertijos y desafíos
Por ejemplo, algunas de las más comunes que he encontrado están principalmente relacionadas con la ordenación y búsqueda técnicas:
procedure bubbleSort(A : list of sortable items) defined as:
do
swapped := false
for each i in 0 to length(A) - 2 inclusive do:
if A[i] > A[i+1] then
swap(A[i], A[i+1])
swapped := true
end if
end for
while swapped
end procedure
insertionSort(array A)
begin
for i := 1 to length[A]-1 do
begin
value := A[i];
j := i - 1;
done := false;
repeat
if A[j] > value then
begin
A[j + 1] := A[j];
j := j - 1;
if j < 0 then
done := true;
end
else
done := true;
until done;
A[j + 1] := value;
end;
end;
BinarySearch(A[0..N-1], value, low, high) {
if (high < low)
return -1 // not found
mid = low + ((high - low)/2)
if (A[mid] > value)
return BinarySearch(A, value, low, mid-1)
else if (A[mid] < value)
return BinarySearch(A, value, mid+1, high)
else
return mid // found
}
Es posible que podamos crear una lista decente de algoritmos y problemas de pseudocódigo, si muchas personas comparten sus pensamientos y experiencias.
Estoy buscando la representación de pseudocódigo, como práctica. Así que incluso si no puede encontrar un ejemplo de pseudocódigo, pero cree que sería un concepto ideal para representar de esta manera, eso ayudaría también.
que también tienen una serie de preguntas relacionadas con el tema demasiado:
- Qué pseudocódigo se te ha pedido que escriba en una entrevista antes?
- ¿Estas preguntas tienden a relacionarse con algoritmos cortos y simples que tienen una o dos funciones de longitud?
- ¿Deben evitarse las construcciones específicas del lenguaje al escribir el seudocódigo? Como la representación pretende ser independiente del lenguaje, ¿es más seguro no usar términos como Dispose y foreach que no existen en cada idioma?
Gracias
Editar:
Unos pocos ejemplos de algunos más que he encontrado, voy a seguir de edición como encuentro más:
escribir una función que toma una sola cuerda para invertir el orden de las palabras dentro de una oración, sin invertir las palabras:
Entrada: "¡El gato se sentó en la alfombra, con otro gato!"
salida: "! Gato otra con la estera, el sobre se sentó gato El"
escribir una función que toma una sola cadena que devolverá la palabra que se produce la mayor parte dentro de esa cadena, ignorando mayúsculas y minúsculas y puntuacion . Si más de una palabra tiene el mismo número de ocurrencias, devuelva la que ocurrió primero:
Entrada: "¡El gato se sentó en la estera, con otro gato!"
de salida: la
escribir una función para encontrar el personaje que tiene el mayor número de ocurrencias dentro de una determinada cadena, ignorando mayúsculas y minúsculas Si hay más de un carácter con igualdad de las ocurrencias más altas, de retorno. el personaje que apareció por primera vez dentro de la cadena
de entrada:. "el carácter"
salida: c
escribir una función que invierte una cadena
de entrada: "inverso"
salida: "esrever"
Si va a escribir pseudocódigo, usted debe estar tratando de representar el algoritmo como de forma clara y concisa como puedas. Eso generalmente significa ignorar la administración explícita de recursos, pero usar cosas como "elemento foreach en alguna colección", incluso si no hay un análogo directo en algunos idiomas. –