
哈希集合
public static int numJewelsInStones(String J, String S) {
int lenj=J.length();
int sum=0;
Set<Character> hashMap=new HashSet<>(lenj-1);
for (int x=0;x<lenj;x++){
hashMap.add(J.charAt(x));
}
for (int i=0;i<S.length();i++){
if (hashMap.contains(S.charAt(i))){
sum++;
continue;
}
}
return sum;
}

暴力求解
public static int numJewelsInStones(String J, String S) {
int sum=0;
for (int i=0;i<S.length();i++){
for (int j=0;j<J.length();j++){
if (S.charAt(i)==J.charAt(j)){
sum++;
break;
}
}
}
return sum;
}

正則運算式
public static int numJewelsInStones(String J, String S) {
return S.replaceAll("[^"+J+"]","").length();
}

集合set
public static int numJewelsInStones(String J, String S) {
int sum=0;
Set<Character> set =new HashSet();
char[] charj=J.toCharArray();
char[] chars=S.toCharArray();
for (char j:charj)
set.add(j);
for (char s:chars)
if (set.contains(s))
sum++;
return sum;
}

學以致用
- replaceAll(regex,replacement)
S.replaceAll("[^"+J+"]","")//代表將J字串全部替換為空字串
- contains()判斷字串中是否有子字串,回傳值為boolean型別
- HashMap使用put,HashSet使用add錄入資料
- HashMap使用containsKey,HashSet使用contain查詢是否存在
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/205736.html
標籤:python
上一篇:RTSP協議安防視頻平臺EasyNVR使用Onvif探測的地址不在線且無法播放問題排查分析
下一篇:QT之QUdpSocket學習
