Categorías
Algorithms

LeetCode – Es subsecuencia (Java)

Dada una cadena sy una cadena t, verifique si s es una subsecuencia de t.

Puede suponer que solo hay letras minúsculas en inglés tanto en s como en t. t es potencialmente una cadena muy larga (longitud ~ = 500.000) y s es una cadena corta (<= 100).

Una subsecuencia de una cadena es una nueva cadena que se forma a partir de la cadena original eliminando algunos (puede ser ninguno) de los caracteres sin alterar las posiciones relativas de los caracteres restantes. (es decir, «ace» es una subsecuencia de «abcde» mientras que «aec» no lo es).

Solución Java

public boolean isSubsequence(String s, String t) {
    if(s.length()==0)
        return true;
 
    int i=0;
    int j=0;    
    while(i<s.length() && j<t.length()){
        if(s.charAt(i)==t.charAt(j)){
            i++;
        }
 
        j++;
 
        if(i==s.length())
            return true;
    }
 
    return false;
}

  LeetCode - Suma de subárbol más frecuente (Java)

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *