今日任务:
151.翻转字符串里的单词
28. 实现 strStr()
59.重复的子字符串
151.翻转字符串里的单词
题目连接:
注意点: java中匹配多个空格字符,正则表达式为"\\s"
class Solution {
public String reverseWords(String s) {
s = s.trim();
String[] words = s.split(" ");
StringBuilder res = new StringBuilder();
for (int i = words.length - 1; i >= 0 ; i--) {
if (!words[i].equals("")) {
res.append(words[i] + " ");
}
}
return res.toString().trim();
}
// @Test
// public void test(){
// String s = "a good example";
// System.out.println("===" + reverseWords(s));
// }
}
28. 实现 strStr()
题目连接:. - 力扣(LeetCode)
没有使用KMP算法,KMP算法要补起来
class Solution {
public int strStr(String haystack, String needle) {
for (int i = 0; i < haystack.length() - needle.length() + 1; i++) {
String temp = haystack.substring(i, i + needle.length());
if (temp.equals(needle)){
return i;
}
}
return -1;
}
// @Test
// public void test(){
// String haystack = "sadbutsad";
// String needle = "sad";
// System.out.println("The index is " + strStr(haystack, needle));
// }
}
59.重复的子字符串
题目连接: . - 力扣(LeetCode)
没有使用KMP算法,KMP算法要补起来