leetcode经验

1.最大的k个元素/第k大的数字 用堆(priority_queue)或者快速排序

2.vector元素复制给map

unordered_map<int,int> m;
for(int num:nums)  //nums是vector
	++m[num];    //键是vector元素,值是元素出现的次数

3.a,b的中点用a+(b-a)/2,不用(a+b)/2,因为后者a+b可能溢出

4.对于string类型的要建map时,可以用vector来替代,索引为字母-‘a’,值字母为出现的次数

//string s, vector<int> counts
for (int i = 0; i < n; i++)  
    counts[s[i] - 'a']++;

5 动态规划中不是所给数据是几维的,递推公式就有几个变量(如leetcode300)。但是递归公式有几个变量,则代码应该就有几重循环,变量循环的内外层关系可能是不可以换的(如leetcode518) (未完全证实)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值