En este post veremos como saber en C# si una palabra contiene una subcadena dada. Por ejemplo, “puntopeek” contiene la subcadena “peek”? Para solucionar este problema, seguiremos la siguiente idea:
Algoritmo
1. Buscamos los dos primeros caracteres que coincidan 2. A partir de esa posicion recorremos la palabra hasta ver si coincide completamente 3. Si no coinciden, volvemos al paso 1
Código en C#
Notas
Es importante notar que aunque String, es una clase en C#, se puede tratar como un array de caracteres, y que el for se hace hasta palabra.Length-subcadena.Length, para que no de excepción. Si quieres saber más sobre este tema, puedes ver un post que escribí hace un tiempo sobre la clase String en C#. También hay que decir que este ejercicio se puede hacer de otra forma más eficiente usando String Matching y algoritmos como KMP, pero no es el objetivo de este post.
Creo que el código está bien comentado, pero cualquier pregunta en los comentarios.
0 comentarios:
Publicar un comentario