título
[Lograr strstr ()]
Implementar strstr ().
Devuelve el índice de la primera aparición de la aguja en un pajar, o -1 si la aguja no es parte de pajar.
Ejemplo 1:
Entrada: pajar = “Hola”, de agujas = “ll”
de salida: 2
Ejemplo 2:
Entrada: pajar = “aaaaa”, de agujas = “bba”
de salida: -1
Aclaración:
Lo que si volvemos cuando la aguja es una cadena vacía? Esta es una gran pregunta que hacer durante una entrevista.
A los efectos de este problema, volveremos 0 cuando la aguja es una cadena vacía. Esto es consistente con strstr de C () y indexOf de Java ().
pensamiento
Buscar la violencia
código
class Solution {
public int strStr(String s, String t) {
if (t.isEmpty()) return 0; // 边界条件: "",""=>0 "a",""=>0
for (int i = 0; i <= s.length() - t.length(); i++) {
for (int j = 0; j < t.length() && s.charAt(i + j) == t.charAt(j); j++)
if (j == t.length() - 1) //匹配 结束再返回s中的匹配起点
return i;
}
// 搜索无果则返回-1
return -1;
}
}
Presentar los resultados
Duración: 2 ms, más rápido que el 90,98% de las presentaciones en línea de Java para implementar strstr ().
Uso de memoria: 38,5 MB, menos del 31,25% de las presentaciones en línea de Java para implementar strstr ().