题目来源: https://leetcode.com/problems/jewels-and-stones/
问题描述: 两个字符串J和S,找出S中出现过多少次J字符串里面包含的字符。
举例说明:
字符串J | 字符串S | 结果 |
---|---|---|
aA | aAAbsdfe | 3 |
b | BBAAAA | 0 |
解决方案
- 双重遍历两个字符串,检查子串是否包含字符,时间复杂度Ο(n^2)
public int numJewelsInStones(String J, String S) { int sum = 0; char[] jChar = J.toCharArray(); char[] sChar = S.toCharArray(); int jLength = jChar.length; int sLength = sChar.length; for(int i=0;i<jLength;i++){ for(int j=0;j<sLength;j++){ if(jChar[i] == sChar[j]) { sum ++; } } } return sum; } }