Python (Java)实例学习教程:宝石与石头

  

  

  

给定字符串J代表石头中宝石的类型,和字符串年代代表你拥有的石头。年代中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。

  

J中的字母不重复,J和年代中的所有字符都是字母。字母区分大小写,因此“a"和“a"是不同类型的石头。

  

  

  <>以前输入:J =,“aA",, S =,“aAAbbbb"   输出:3   

  

  <>以前输入:J =,“z",, S =,“ZZ"   输出:0   

  

     <李> S和J最多含有50个字母。   <李> J中的字符不重复。          Python (Java)实例学习教程:宝石与石头”>
  
  <p>
  </p>
  <ul类=   <李> S和J将包括字母,长度最多50。   <李>中的人物J是截然不同的。   

  

  

J改为设置集合,遍历年代即可(因为集查找复杂度为常数)

  

  

  <>以前class  Solution  {   ,public  int  numJewelsInStones (String  J, String  S), {   ,Set set =, new  HashSet<在();   ,for  (char  c : J.toCharArray ())   ,set.add (c);   ,int  count =, 0;   ,for  (char  c : S.toCharArray ())   ,if  (set.contains (c)),数+ +;   ,return 计算;   ,}   }   

  

  <>以前class 解决方案:   ,def  numJewelsInStones (J:自我,还以为,str,学生:,str),→, int:   count =, 0=,hash_set 集(J)   ,for  c  S:拷贝   ,if  c  hash_set拷贝:   count  +=, 1   ,return 数   

  
更多的学习教程会继续为大家更新。

Python (Java)实例学习教程:宝石与石头