题目大意
https://leetcode.com/problems/substring-with-concatenation-of-all-words/
给你一个字符串s和字符串数组words,输出字符串数组words中的字符串的任意组合形成的字符串在s中的index的list。
题目分析
最开始用暴力方法做,发现超时,最后参考了这篇文章的做法,利用了滑动窗口的做法进行优化,是用HashMap维护了一个words[0].length的窗口。
代码
暴力超时的解法,时间复杂度:O(s.length words.length words[0].length)
|
|
利用滑动窗口,AC代码,时间复杂度:O(s.length * words[0].length) ,因为从jdk7 update6开始substring()方法的时间复杂度不是O(1)了
|
|