ledcode第一天

简单题:判断一个数的数字计数是否等于数位的值在这里插入图片描述

//哈希表计数法
class Solution {
public:
    bool digitCount(string num) {
        vector<int> mp(10,0);  //动态的序列容器 map(关键词,关键字)
        for(char c:num){
            mp[c-'0']++;   //关键字是数字类型,num是字符类型,需要减去‘0’字符,每一项都加1,循环
        }
        for(int i=0;i<num.length();i++){
            if(num[i]-'0'!=mp[i]){   //比较记录的次数和原先的数字
                return false;
            }
        }
        return true;
    }
};
  • 知识点:关于vector
    vector是一个动态的序列容器,相当于一个size可变的数组。
    vector的简单使用:
    声明及初始化:方式一:vector s;
    方式二:vector s(10);初始化s容器中10个向量
    使用vector需要注意的点:
    1: 当需要使用vector的时候,需要包含头文件:#include ,一般加上using namespace std;
    2:如果不加,则在调用时候必须用std::vector<…>这样的形式,即在vector前加上std::,这表示运用的是std命名空间下的vector容器:
    3:使用vector 不需要动态操作内存,不用担心内存泄露等问题;

    原文链接:https://blog.csdn.net/pigdwh/article/details/81808740

vector<int> a;
 
a.push_back(1);    //在尾部加入一个数据
 
a.push_back(2);
 
a.pop_back();      //删除最后一个数据
  • map知识点
    map是STL的一个关联容器,它提供一对一的hash。
    第一个可以称为关键字(key),每个关键字只能在map中出现一次;
    第二个可能称为该关键字的值(value)
    引用:http://t.csdn.cn/sMArr

  • JAVAcharAt的作用
    返回字符串指定位置的char值。如果s=“102”。那么chatAt(0)=‘1’,这个‘1’是字符,不是数字。为啥-48,其实是为了转换为数字。**字符’0’的ascii码是48.**数字0的值是0.所以’0’和0差48 以此类推 一个字符转换对应的值,就要减去48,即减去’0’。
    ————————————————
    原文链接:https://blog.csdn.net/nkd50000/article/details/100143484

加油!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值