strstrIII
来源:互联网 发布:java简单工厂模式 编辑:程序博客网 时间:2024/06/05 00:41
public static boolean strstp11(String s, String t) { char[] tmap = new char[256]; for (char c: t.toCharArray()) { tmap[c]++; } int len = t.length(); int count = 0; boolean isStart = true; int start = 0; for (int i = 0; i < s.length(); i++) { if (--tmap[s.charAt(i)] >= 0) { if (isStart) { isStart = false; start = i; } count++; if (count == len) { return true; } } else { do { if (tmap[s.charAt(start)]++>= 0) { count--; } } while (s.charAt(start++)!=s.charAt(i)); if (start > i) { isStart = true; } } } return false; }
0 0