顺德网站,西安建设工程信息网几点开标,怎么在网站首页做飘窗,用6数字域名做网站的是这是悦乐书的第313次更新#xff0c;第334篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第182题#xff08;顺位题号是771#xff09;。字符串J代表珠宝#xff0c;S代表你拥有的石头。S中的每个字符都是你拥有的一种石头。计算S中有多少石头也是珠宝。J中…这是悦乐书的第313次更新第334篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第182题顺位题号是771。字符串J代表珠宝S代表你拥有的石头。S中的每个字符都是你拥有的一种石头。计算S中有多少石头也是珠宝。J中的字符不会重复出现J和S中的所有字符都是英文字母。字母区分大小写因此“a”被认为是与“A”不同类型的石头。例如 输入J “aA”S “aAAbbbb” 输出3 输入J “z”S “ZZ” 输出0 注意 S和J将由字母组成长度最多为50。J中的字符不会重复出现。本次解题使用的开发工具是eclipsejdk使用的版本是1.8环境是win7 64位系统使用Java语言编写和测试。 02 第一种解法 题目的意思是计算出J中的每个字符在S中出现的次数之和。因为J中的字符不会有重复值所以可以直接计算不用担心计算失真。因为是英文字母所以可以直接使用整型数组以S中每个字符代表的ASCII值来作为索引出现次数为值然后遍历该数组再以J的每个字符作为索引累加对应的元素值即可。 public int numJewelsInStones(String J, String S) {int[] arr new int[128];for (char ch : S.toCharArray()) {arr[ch]; }int count 0;for (char ch : J.toCharArray()) {count arr[ch]; }return count;
} 03 第二种解法 也可以只使用一个循环来解决借助字符串的indexOf方法每次获取S中的一个字符来判断是否存在于J中存在就次数加1。 public int numJewelsInStones(String J, String S) {int count 0;for (int i0; iS.length(); i) {if (J.indexOf(S.charAt(i)) -1) {count;}}return count;
} 04 小结 算法专题目前已日更超过五个月算法题文章182篇公众号对话框回复【数据结构与算法】、【算法】、【数据结构】中的任一关键词获取系列文章合集。 以上就是全部内容如果大家有什么好的解法思路、建议或者其他问题可以下方留言交流点赞、留言、转发就是对我最大的回报和支持 转载于:https://www.cnblogs.com/xiaochuan94/p/10748210.html