Multi delimiters: separate a string with given delimiters
Example:
-
str=”abcdefg”, dels=[“bc”, “f”] => [“a”, “de”, “g”]
-
str=”abcdefg”, dels=[“bc”, “f”, “b”] => [“a”, “de”, “g”]
Multi delimiters: separate a string with given delimiters
Example:
str=”abcdefg”, dels=[“bc”, “f”] => [“a”, “de”, “g”]
str=”abcdefg”, dels=[“bc”, “f”, “b”] => [“a”, “de”, “g”]
什么公司?
Trie是针对 [“bc”, “b”] 的情况吧,感觉可以的
可以用替换法把del的字符替换成‘*’ 然后再split转换后的字符
怎么替换呢?str里每个字母都要对应找一遍吗?谢谢
可以循环把[“bc”, “f”,“b”]在str里面找出来吧,
for(String delimiter: delimiters){
while(str.indexOf(delimiter, start pos) != -1) {set delimiter position as *}
}
然后把str里面包含delimiter的地方换成*,最后扫一遍str,把结果存入list并return。
不过要是不让用indexOf,那找起来还是挺麻烦的
明白了!非常感谢~
这个题要想o(n)做需要用AC自动机
我觉得n平方就好了