Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

136
Visualizações
Dada una matriz 2-D que contiene todas las cadenas posibles de letras mayúsculas de longitud k menos una, encuentre la cadena que falta

Dada una matriz bidimensional kx ((26^k)-1) , que contiene todas las cadenas posibles de letras mayúsculas de longitud k , excepto una de ellas. ¿Cómo podemos saber la cadena que falta mientras leemos solo las entradas theta(26^k) de la matriz, y no las entradas theta(kx (26^k))?

Hemos pensado en usar punteros 'k' para todas las columnas 26^k, pero seguirá siendo lo mismo que buscar entradas kx 26^k, también consideramos buscar a[:0], a[:1], a [:2], . . . a[:(26^k)-1] pero sigue siendo lo mismo que buscar valores de kx 26^k, ya que el corte también cuenta como mirar esas entradas.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Aquí hay una manera de hacerlo en una complejidad de tiempo Θ(26^k) usando un espacio O(26^k) adicional.

Veamos primero la intuición:

  1. Cada fila de la matriz tendría (26^k)-1 entradas. En la primera fila, todas las letras tendrían la misma frecuencia excepto una cuya frecuencia sería una menor que las otras 25. Esta letra sería la primera letra de nuestra cadena faltante.
  2. Ahora que ya conocemos la primera letra de nuestra cadena que falta, entonces, para la segunda fila, no necesitamos mirar todas las entradas y, en su lugar, podemos mirar solo las 26^(k-1) - 1 columnas para las cuales el valor correspondiente de la primera fila era la letra que faltaba (pero ahora, para saber qué columnas buscar, necesitaríamos almacenar esas columnas en otro lugar usando espacio adicional). Y solo tendríamos que buscar en 26^(k-1) - 1 entradas en la segunda fila.
  3. Para una fila dada, podemos contar la frecuencia de las letras en las entradas dadas en la O(no. of entries) y el espacio constante (26 letras). Una vez que conocemos la letra que falta en una fila dada, podemos revisar la fila nuevamente y almacenar índices de todas las columnas para las cuales la letra es la letra que falta y almacenar esos índices en una matriz separada usando el espacio adicional O(26^(k-1-i)) para ith fila.
  4. En las filas subsiguientes, solo visitamos las columnas que se mantienen en la matriz de nuestra fila anterior que contiene índices de columnas para las que la letra era la letra que faltaba. por ejemplo, para la tercera fila, podemos prescindir de mirar solo 26^(k-2) - 1 entradas para los índices que almacenamos en nuestra matriz cuando miramos la segunda fila.

Así que el número total. de las entradas que tendríamos que mirar en cada fila (después de resumir la serie geométrica) serían:

 sum{(26 - 1), (26^2 - 1), (26^3 - 1) ... (26^k -1)} = (26*(1 - (26^k))/(1-26) - k

que es Θ(26^k) complejidad de tiempo y espacio.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda