先上题目

思路:题目不难,两重循环即可解决。

在做这道题的时候,发现了一个细节。大概像我这样的新手都会忽视吧。一般情况下,我都习惯直接爱在循环判断里       组长度函数,觉得方便快捷。但是这样做的话,每次进行循环判定的时候都会进行一次函数求值。如果循环层数很大,或者代码里很多地方使用了这样的做法。会耗费大量的时间资源,降低算法速度。对比下面两种解法即可明白:

第一种 :耗时12ms

int numJewelsInStones(char* J, char* S) {int i,j,count=0;for(i=0;i<strlen(J);i++){for(j=0;j<strlen(S);j++){if(J[i]==S[j]){count++;}}}return count;
}

第二种:耗时4ms

int numJewelsInStones(char* J, char* S) {int Jlen=strlen(J);int Slen=strlen(S);int i,j,count=0;for(i=0;i<Jlen;i++){for(j=0;j<Slen;j++){if(J[i]==S[j]){count++;}}}return count;
}    

第二种在进行循环直接,先进行函数求值,赋给一个变量,再进行循环,使用了多一点空间,在本题中算法效率就有了很大提升

C语言/771.宝石与石头相关推荐

  1. 771. 宝石与石头

    给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符都是字母 ...

  2. LeetCode 题库 全 JAVA 解题---771.宝石与石头

    LeetCode 题库 全 JAVA 解题 771.宝石与石头 原题回顾: 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥 ...

  3. 【leetcode】771. 宝石与石头 (简单)

    [leetcode]771. 宝石与石头 给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你 ...

  4. Java实现 LeetCode 771 宝石与石头(这是真暴力)

    771. 宝石与石头 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 ...

  5. leetcode 771. 宝石与石头(set)

    给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符都是字母 ...

  6. LeetCode 771. 宝石与石头(哈希)

    文章目录 1. 题目信息 2. 解题 1. 题目信息 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石 ...

  7. LeetCode 771. 宝石与石头

    题目: 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符 ...

  8. LeetCode 771. 宝石与石头(java)

    给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. 字母区 ...

  9. 【771. 宝石与石头】

    来源:力扣(LeetCode) 描述: 给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你想 ...

最新文章

  1. A Survey on Techniques in NLP--阅读笔记
  2. PostgreSQL schemaless 的实现(类mongodb collection)
  3. Linux:目录操作
  4. 近世代数--内直积--内直积是什么?充要条件?
  5. ACM公选课第七节DP基础2+3 2020.4.21-5.10补
  6. 代码编译突然变缓慢问题解决办法(codeblock)
  7. dhtml是基于html的一门语言,什么是DHTML
  8. 第一章 初识Linux shell
  9. 【机器学习】自己手写实现线性回归,梯度下降 原理
  10. java stringutils api_StringUtils工具类常用api 转
  11. NDoc使用简要手册 及中文支持(转)
  12. Win7下使用U盘安装Ubuntu16.04双系统图文教程(亲测)
  13. 一个简单的登录注册页面html代码
  14. AD 屏蔽原理图中的器件
  15. linux7.1装宝塔,CentOS 7.6 宝塔 + SSRPanel 安装
  16. 蓝牙耳机选哪个?盘点双十二必入的高性价比蓝牙耳机
  17. MYSQL-mysql中的truncate的用法
  18. java的nullpoint_java.lang.NullPointerException
  19. 单词长度和GPS数据处理——程序设计入门C语言
  20. 十二星座的12种风味咖啡,最后一个能让你上瘾

热门文章

  1. python智能写小说软件_Scratch编程实现智能自动创作写小说,自动生成文章,自动写材料...
  2. Qt setFocus无法生效问题
  3. 以太坊智能合约开发2-Solidity语法学习
  4. 了解阿博茨RPA生态系统
  5. L1-085 试试手气
  6. 一篇文章让你搞懂,Python文件操作
  7. RK3399 Android7/8 system vendor分区挂载参数
  8. 单片机编程:如何喂狗的灵魂拷问...
  9. 我今天才知道,原来蒙古包是没有地址的?!
  10. 利用OpenCV与Sklearn实现的Logistic Regression